Dove trovare l'origine di una funzione VBA in Excel


12

Ho una cartella di lavoro che utilizza una certa funzione vba che non appare in Inserisci | Inserisci funzione ... elenco della finestra di dialogo delle funzioni disponibili.

Come trovo la sua fonte (per vedere cosa fa)?

Risposte:


19

Spero di capire la tua domanda ... Leggendo altre risposte vedo che non è una macro registrata. È sicuro supporre che qualcuno l'abbia scritto in VBA. Prova quanto segue:

  1. Premi Alt+ F11per aprire l'editor VBA
  2. Fai clic su Visualizza -> Esplora progetti (potrebbe essere già visibile.) (Oppure: CTRL+ R)
  3. Dovresti vedere "VBAProject (nome della cartella di lavoro.xls). Fai clic su di esso.
  4. Fare clic su uno dei fogli in "Oggetti di Microsoft Excel" in Esplora progetti.
  5. Fai clic su Visualizza -> Codice
  6. Fai clic su Modifica -> Trova
  7. Digita il nome della funzione nella casella
  8. Assicurarsi che sia selezionato "Progetto corrente".
  9. Fai clic su Trova successivo

Questo dovrebbe portarti dove è scritta la funzione.


Prova questo: 3a. Fare clic su uno dei fogli in "Oggetti di Microsoft Excel" in Esplora progetti. 3b. Fai clic su Visualizza> Codice ora prova il passaggio 4 nella risposta originale.
Sux2Lose

Saluti che l'hanno trovato
Rutherford

3

Premi ALT+ F11per vedere la finestra del progetto VBA. Dovresti essere in grado di trovare il codice per la funzione personalizzata lì dentro.


1

Microsoft ha scritto una documentazione per VBA. Viene ordinato per oggetti, non per funzioni, ma se non è necessario digitare il nome di un oggetto prima della funzione, è probabile che sia una funzione di un oggetto con cui si sta attualmente lavorando, come la cartella di lavoro corrente. Questa documentazione può essere letta qui. http://msdn.microsoft.com/en-us/library/bb149081.aspx Prova a cercare la funzione in oggetti come Cartella di lavoro, Foglio, ecc. e, se non è presente, usa l'opzione di ricerca sul sito ( attenzione: questa ricerca era una volta cattiva, ora sembra essere una ricerca bing, quindi forse ora è meglio). Non sarai in grado di vedere l'origine della funzione, ma è presente un'API completa.

Se non riesci a trovare la funzione lì e pensi che non sia una funzione Excel standard, c'è la domanda da dove Excel l'ha presa per eseguirla. Prova a eseguire il debug di una macro che chiama la funzione in questione e utilizza il "passaggio al pulsante". Se vedi la fonte, hai risolto il tuo problema. Se non è presente, potrebbe provenire da un'applicazione esterna che comunica con Excel. Vai al pulsante "Office", lì scegli le opzioni di Excel, lì vai ai componenti aggiuntivi. Puoi guardare i componenti aggiuntivi installati e cercare la loro documentazione.

Se tutto il resto fallisce e / o è troppo ingombrante, puoi sempre cercare su Google qualcosa come "[nome della funzione] + Excel + VBA + Documentazione]". Forse troverai della documentazione online.


la funzione non è sicuramente una funzione standard di Excel. Per quanto ne so, posso vedere tutte le funzioni disponibili tramite Inserisci | Finestra di dialogo Funzione ... quindi mostra tutte le categorie. il nome della funzione non viene visualizzato.
Rutherford,

0

La funzione a cui fai riferimento è probabilmente una "macro" registrata in Excel.

Se stai utilizzando Office 2007, fai clic sulla scheda Visualizza, quindi fai clic sulla freccia a discesa sotto il pulsante Macro. Seleziona Visualizza macro dall'elenco per visualizzare le macro registrate per quel foglio di calcolo.

Se vedi il nome della funzione che ti interessa elencata, selezionala e fai clic sul pulsante Modifica per visualizzarla.


grazie per la risposta ma vedo solo due macro qui e nemmeno la funzione che mi interessa
Rutherford

Qual è il nome della funzione?
Michael Todd,

il nome è MarketPrice
rutherford
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.