Si applica a
Excel 2010

Riepilogo

Nelle versioni di Microsoft Excel elencate nella sezione "Si applica a" è possibile creare una funzione definita dall'utente che restituisca un calcolo personalizzato usando Visual Basic, Applications Edition. Tuttavia, le funzioni definite dall'utente non possono eseguire azioni che modificano l'ambiente di Microsoft Excel se chiamate da una formula in una cella del foglio di lavoro.

Ulteriori informazioni

Una funzione definita dall'utente chiamata da una formula in una cella di un foglio di lavoro non può modificare l'ambiente di Microsoft Excel. Ciò significa che una funzione di questo tipo non può eseguire una delle operazioni seguenti:

  • Inserire, eliminare o formattare celle nel foglio di calcolo.

  • Modificare il valore di un'altra cella.

  • Spostare, rinominare, eliminare o aggiungere fogli a una cartella di lavoro.

  • Modificare le opzioni dell'ambiente, ad esempio la modalità di calcolo o le visualizzazioni dello schermo.

  • Aggiungere nomi a una cartella di lavoro.

  • Impostare le proprietà o eseguire la maggior parte dei metodi.

Lo scopo delle funzioni definite dall'utente è consentire all'utente di creare una funzione personalizzata non inclusa nelle funzioni fornite con Microsoft Excel. Anche le funzioni incluse in Microsoft Excel non possono modificare l'ambiente. Le funzioni possono eseguire un calcolo che restituisce un valore o un testo nella cella in cui vengono immesse. Qualsiasi modifica ambientale deve essere apportata mediante l'uso di una subroutine Visual Basic. Durante il calcolo, Excel esamina i precedenti della cella che contiene una funzione definita dall'utente. Se non tutti i precedenti sono stati calcolati finora durante il processo di calcolo, Excel alla fine chiama la funzione definita dall'utente e passa una cella Null o Vuota alla funzione. Excel verifica quindi che siano presenti passaggi di calcolo sufficienti per il calcolo di tutti i precedenti. Durante il passaggio di calcolo finale, la funzione definita dall'utente viene passata i valori correnti delle celle. Ciò può causare la chiamata della funzione definita dall'utente più frequentemente del previsto e con argomenti imprevisti. Pertanto, la funzione definita dall'utente può restituire valori imprevisti.Per il calcolo corretto, tutti gli intervalli usati nel calcolo devono essere passati alla funzione come argomenti. Se gli intervalli di calcolo non vengono passati come argomenti, invece di fare riferimento agli intervalli all'interno del codice VBA della funzione, Excel non può considerarli all'interno del motore di calcolo. Pertanto, Excel potrebbe non calcolare adeguatamente la cartella di lavoro per assicurarsi che tutti i precedenti vengano calcolati prima di calcolare la funzione definita dall'utente.

Riferimenti

"Manuale dell'utente di Visual Basic" versione 5.0, Capitolo 4, "Procedura di Visual Basic" "Scrittura di una funzione del foglio di lavoro definita dall'utente", File della Guida di Visual Basic di Microsoft Excel 7.0.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.