Oggetto applicazione Excel VBA - Macro semplici di Excel

Sommario

Foglio di lavoroFunzione | Aggiornamento dello schermo | Visualizza avvisi | Calcolo

La madre di tutti gli oggetti è Excel stesso. Lo chiamiamo il Oggetto dell'applicazione. L'oggetto applicazione dà accesso a molte opzioni relative a Excel.

Foglio di lavoroFunzione

Puoi usare la proprietà WorksheetFunction in Excel VBA per accedere alle funzioni di Excel.

1. Ad esempio, posiziona un pulsante di comando sul foglio di lavoro e aggiungi la seguente riga di codice:

Range("A3").Value = Application.WorksheetFunction.Average(Range("A1:A2"))

Quando si fa clic sul pulsante di comando nel foglio di lavoro, Excel VBA calcola la media dei valori nella cella A1 e nella cella A2 e inserisce il risultato nella cella A3.

Nota: invece di Application.WorksheetFunction.Average, usa semplicemente WorksheetFunction.Average. Se guardi la barra della formula, puoi vedere che la formula stessa non è inserita nella cella A3. Per inserire la formula stessa nella cella A3, utilizzare la seguente riga di codice:

Intervallo ("A3"). Valore = "= MEDIA (A1: A2)"

Aggiornamento dello schermo

A volte potresti trovare utile disabilitare l'aggiornamento dello schermo (per evitare lo sfarfallio) durante l'esecuzione del codice. Di conseguenza, il tuo codice verrà eseguito più velocemente.

1. Ad esempio, posiziona un pulsante di comando sul foglio di lavoro e aggiungi le seguenti righe di codice:

Dim i As Integer
Per i = 1 a 10000
Intervallo ("A1"). Valore = i
Avanti io

Quando fai clic sul pulsante di comando nel foglio di lavoro, Excel VBA visualizza ogni valore una piccola frazione di secondo e questo può richiedere del tempo.

2. Per accelerare il processo, aggiornare il codice come segue.

Dim i As Integer
Application.ScreenUpdating = False
Per i = 1 a 10000
Intervallo ("A1"). Valore = i
Avanti io
Application.ScreenUpdating = True

Di conseguenza, il tuo codice verrà eseguito molto più velocemente e vedrai solo il risultato finale (10000).

Visualizza avvisi

È possibile indicare a Excel VBA di non visualizzare avvisi durante l'esecuzione del codice.

1. Ad esempio, posiziona un pulsante di comando sul foglio di lavoro e aggiungi la seguente riga di codice:

ActiveWorkbook.Chiudi

Quando fai clic sul pulsante di comando nel foglio di lavoro, Excel VBA chiude il file Excel e ti chiede di salvare le modifiche apportate.

2. Per indicare a Excel VBA di non visualizzare questo avviso durante l'esecuzione del codice, aggiornare il codice come segue.

Application.DisplayAlerts = False
ActiveWorkbook.Chiudi
Application.DisplayAlerts = True

Di conseguenza, Excel VBA chiude il file Excel, senza chiederti di salvare le modifiche apportate. Eventuali modifiche vengono perse.

Calcolo

Per impostazione predefinita, il calcolo è impostato su automatico. Di conseguenza, Excel ricalcola automaticamente la cartella di lavoro ogni volta che cambia un valore che influisce su una formula. Se la tua cartella di lavoro contiene molte formule complesse, puoi velocizzare la tua macro impostando il calcolo su manuale.

1. Ad esempio, posiziona un pulsante di comando sul foglio di lavoro e aggiungi la seguente riga di codice:

Application.Calculation = xlCalculationManual

Quando fai clic sul pulsante di comando nel foglio di lavoro, Excel VBA imposta il calcolo su manuale.

2. Puoi verificarlo facendo clic su File, Opzioni, Formule.

3. Ora, quando modifichi il valore della cella A1, il valore della cella B1 non viene ricalcolato.

È possibile ricalcolare manualmente la cartella di lavoro premendo F9.

4. Nella maggior parte dei casi, imposterai nuovamente il calcolo su automatico alla fine del codice. Basta aggiungere la seguente riga di codice per ottenere ciò.

Applicazione.Calcolo = xlCalcoloAutomatico

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave