Come dichiarare VBA in Excel Costanti
Il valore del Pi è 3,14, l’attrazione gravitazionale della Terra è 9,8 m / s ^ 2 ^, sei interessato a VBA, ecc. Sono tutte costanti e non cambiano.
In VBA è possibile definire variabili il cui valore non può essere modificato nel programma. Il programmatore VBA definisce questi valori costanti da solo nel programma per utilizzarli ancora e ancora.
Come definire un valore costante in VBA? Usiamo la parola chiave Const * per dichiarare una costante in VBA.
La sintassi per dichiarare una variabile costante in VBA è:
[<Scope Specifier>] Const <VarName> as <variable_type> = <value>
link:/general-topics-in-vba-excel-vba-variable-scope
=== `qui.
Nota: non usiamo mai la parola chiave Dim per dichiarare una costante in VBA.
<VarName>: è il nome della variabile costante.
<variable_type>: il tipo di costante. Ad esempio, Integer, String, Date, ecc.
<valore>: * Il valore della variabile costante.
Un semplice esempio della variabile costante è:
Const pi as double = 3.14
Qui abbiamo dichiarato il valore costante di pi in una variabile denominata_pi_. Ora possiamo usare questo pi nel nostro programma. Il valore sarà sempre 3,14. Se provi a modificare il valore di una variabile costante, il VBA di Excel visualizzerà un messaggio di errore.
Esempi di variabili costanti VBA Studia il codice seguente:
Const pi As Double = 3.14 Const rad As Double = 6371 Sub Earth() sArea = 4 pi Sqr(rad) Debug.Print sArea End Sub Sub Mars() rad = 3389.5 sArea = 4 pi Sqr(rad) Debug.Print sArea End Sub
Qui abbiamo definito due costanti, pi e rad. Il valore di pi greco è 3,14 e rad è 6371 che è il raggio terrestre.
Ora, quando eseguiamo il primo sottomarino della Terra, funziona perfettamente e stampa la superficie della Terra.
Nel prossimo sub-Marte, abbiamo ridefinito la costante rad poiché il raggio di Marte è diverso. Quando eseguiamo questo programma, viene visualizzato un errore che dice “L’assegnazione a una costante non è consentita”.
Come reinizializzare una costante in VBA
Come hai visto nell’esempio sopra, non possiamo assegnare nuovi valori a una costante. Sì, non puoi.
Ma se è ancora necessario utilizzare lo stesso nome di un valore fisso diverso, è sufficiente utilizzare la parola chiave Const * prima dell’assegnazione.
Il codice seguente funzionerà perfettamente.
Const pi As Double = 3.14 Const rad As Double = 6371 Sub Earth() sArea = 4 pi Sqr(rad) Debug.Print sArea End Sub Sub Mars() Const rad = 3389.5 sArea = 4 pi Sqr(rad) Debug.Print sArea End Sub
La subroutine sopra funzionerà perfettamente senza errori. Ma non consiglio questo approccio. Il modo migliore è identificare le costanti pubbliche e private e definirle separatamente. E questo ci porta al nostro prossimo segmento.
Costanti pubbliche e private in VBA Come abbiamo appreso negli esempi precedenti, alcune costanti possono essere universali e alcune possono differire per oggetti diversi. Ad esempio, il valore pi è costante per l’intero universo, ma il numero di pianeti dal sistema solare al sistema solare e il raggio dei pianeti varia da pianeta a pianeta.
Poiché il raggio della Terra è costante per essa, non per l’universo.
Allo stesso modo, nei programmi, ci saranno alcune costanti private dei sub e dei moduli e alcune saranno pubbliche costanti per l’intero progetto VBA. Il tuo compito è identificarli e dichiararli in modo diverso.
Facciamo un altro esempio:
Public Const pi As Double = 3.14 ' This can be accessed from any module in the project Private Const planets As Integer = 8 ' this is private to this module Sub Earth() Const rad As Double = 6371 'Private to this subroutine. Can't be accessed outside sArea = 4 pi Sqr(rad) Debug.Print sArea End Sub Sub Mars() Const rad As Double = 3389.5 'Private to this subroutine. Can't be accessed outside sArea = 4 pi Sqr(rad) Debug.Print sArea End Sub
Questa è una semplice specificazione dell’ambito della variabile. È possibile leggere l’impostazione dell’ambito della variabile link: / general-topics-in-vba-excel-vba-variable-scope [qui in dettaglio]
.
Quindi sì ragazzi, è così che dichiari e usi le costanti in Excel VBA. Ho provato a spiegare in modo creativo. Spero di essere stato abbastanza esplicativo. Se hai qualche dubbio, chiedi nella sezione commenti qui sotto. Sarò felice di ascoltarti e risponderti.
Articoli correlati:
link: / general-topics-in-vba-excel-vba-variable-scope [Excel VBA Variable Scope]
| abbiamo specificatori di accesso alle variabili che definiscono da dove è possibile accedere a una variabile definita. Excel VBA non fa eccezione. Anche VBA ha specificatori di ambito. Questi specificatori di ambito possono essere utilizzati per impostare la visibilità / ambito di una variabile in Excel VBA.
link: / celle-intervalli-righe-e-colonne-in-vba-qual-è-la-differenza-tra-byref-e-byval-argomenti-vba-interview-question [Argomenti ByRef e ByVal]
| Quando un argomento viene passato come argomento ByRef a un diverso sub o funzione, viene inviato il riferimento della variabile effettiva. Qualsiasi modifica apportata alla copia della variabile si rifletterà nell’argomento originale.
`link: / files-cartella-di lavoro-e-fogli di lavoro-in-vba-elimina-fogli-senza-richieste-di-conferma-utilizzando-vba-in-microsoft-excel [Elimina fogli senza richieste di conferma usando VBA in Microsoft Excel] stai cancellando fogli usando VBA, sai cosa stai facendo. Vorresti dire a Excel di non mostrare questo avviso ed eliminare il dannato foglio.
Aggiungi e salva una nuova cartella di lavoro usando VBA in Microsoft Excel 2016 | In questo codice abbiamo prima creato un riferimento a un oggetto cartella di lavoro. E poi l’abbiamo inizializzato con un nuovo oggetto cartella di lavoro. Il vantaggio di questo approccio è che puoi eseguire facilmente le operazioni su questa nuova cartella di lavoro. Come salvare, chiudere, eliminare, ecc. Visualizza un messaggio su La barra di stato VBA di Excel La barra di stato in Excel può essere utilizzata come monitor del codice. Quando il tuo codice VBA è lungo e esegui diverse attività utilizzando VBA, spesso disabiliti l’aggiornamento dello schermo in modo da non vedere lo sfarfallio dello schermo Disattiva i messaggi di avviso utilizzando VBA in Microsoft Excel 2016 | Questo codice non solo disabilita gli avvisi VBA, ma aumenta anche l’efficienza temporale del codice. Vediamo come.
Articoli popolari:
link: / keyboard-formula-shortcuts-50-excel-shortcuts-to-aumentare-la-produttività [50 scorciatoie Excel per aumentare la produttività]
| Diventa più veloce nel tuo compito. Queste 50 scorciatoie ti faranno lavorare ancora più velocemente su Excel.
link: / formule-e-funzioni-introduzione-di-vlookup-funzione [La funzione CERCA.VERT in Excel]
| Questa è una delle funzioni più utilizzate e popolari di Excel che viene utilizzata per cercare valori da diversi intervalli e fogli.
link: / tips-countif-in-microsoft-excel [COUNTIF in Excel 2016]
| Contare i valori con le condizioni utilizzando questa straordinaria funzione. Non è necessario filtrare i dati per contare un valore specifico.
La funzione Countif è essenziale per preparare la tua dashboard.
link: / excel-formula-and-function-excel-sumif-function [Come usare la funzione SUMIF in Excel]
| Questa è un’altra funzione essenziale della dashboard. Questo ti aiuta a riassumere i valori su condizioni specifiche.