VBA-constanten declareren in Excel

Inhoudsopgave:

Anonim

De waarde van de Pi is 3,14, de zwaartekracht van de aarde is 9,8 m/s2, je hebt interesse in VBA, enz. Dit zijn allemaal constanten en veranderen niet.

In VBA kun je variabelen definiëren waarvan de waarde niet in het programma kan worden gewijzigd. De VBA-programmeur definieert deze constante waarden zelf in het programma om ze steeds opnieuw te gebruiken.

Hoe een constante waarde in VBA te definiëren?

We gebruiken het trefwoord Constom een ​​constante in VBA te declareren.

De syntaxis van het declareren van een constante variabele in VBA is:

[] Const als = 

[]: De scopespecificatie is optioneel. U specificeert het bereik van de constante (openbaar of privé) als u wilt, anders declareert u het niet. Standaard is het bereik van een constante privé. U kunt hier meer lezen over Scope Specificifiers.

Opmerking: we gebruiken het Dim-sleutelwoord nooit om een ​​constante in VBA te declareren.

: Het is de naam van de constante variabele.

: Het type van de constante. Bijvoorbeeld geheel getal, tekenreeks, datum, enz.

: De waarde van de constante variabele.

Een eenvoudig voorbeeld van de constante variabele is:

Const pi als dubbel = 3.14

Hier hebben we de constante waarde van pi gedeclareerd in een variabele met de naampi. Nu kunnen we dit gebruiken piin ons programma. De waarde is altijd 3.14. Als u de waarde van een constante variabele probeert te wijzigen, verschijnt er een foutmelding in Excel VBA.

Voorbeelden van VBA-constante variabelen

Bestudeer de onderstaande code:

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 

Hier hebben we twee constanten gedefinieerd, pi en de rad. De waarde van de pi is 3,14 en rad is 6371, wat de straal van de aarde is.

Nu, wanneer we de eerste onder de aarde laten lopen, werkt het prima en drukt het het oppervlak van de aarde af.

In de volgende sub-Mars hebben we de constante rad opnieuw gedefinieerd omdat de straal van mars anders is. Wanneer we dit programma uitvoeren, geeft het een foutmelding: "Toewijzing aan constante is niet toegestaan".

Hoe een constante in VBA opnieuw te initialiseren

Zoals je in het bovenstaande voorbeeld hebt gezien, kunnen we geen nieuwe waarden toewijzen aan een constante. Ja dat mag je niet.

Maar als u nog steeds dezelfde naam als een andere vaste waarde moet gebruiken, gebruikt u gewoon de Consttrefwoord voor de opdracht.

De onderstaande code zal perfect werken.

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 

De bovenstaande subroutine zal perfect werken zonder fouten. Maar ik raad deze aanpak niet aan. De beste manier is om de publieke en private constanten te identificeren en afzonderlijk te definiëren. En dit brengt ons bij ons volgende segment.

Openbare en privéconstanten in VBA

Zoals we in de bovenstaande voorbeelden hebben geleerd, kunnen sommige constanten universeel zijn en sommige kunnen verschillen voor verschillende objecten. Zo is de pi-waarde constant voor het hele universum, maar het aantal planeten van zonnestelsel tot zonnestelsel en de straal van planeten varieert van planeet tot planeet.

Omdat de straal van de aarde constant is voor haar, niet voor het universum. Evenzo zullen er in programma's enkele constanten zijn die privé zijn voor sub's en modules en sommige zullen openbare constanten zijn voor het hele VBA-project. Het is jouw taak om ze te identificeren en ze anders te declareren.

Laten we nog een voorbeeld nemen:

Public Const pi As Double = 3.14 ' Dit is toegankelijk vanuit elke module in het project Private Const planets As Integer = 8 ' dit is privé voor deze module Sub Earth() Const rad As Double = 6371 'Private voor deze subroutine. Niet toegankelijk buiten sArea = 4 * pi * Sqr(rad) Debug.Print sArea End Sub Sub Mars() Const rad As Double = 3389.5 'Privé voor deze subroutine. Niet toegankelijk buiten sArea = 4 * pi * Sqr(rad) Debug.Print sArea End Sub 

Dit is een eenvoudige specificatie van het bereik van een variabele. U kunt hier in detail lezen over de instelling van het variabele bereik.

Dus ja jongens, dit is hoe je constanten declareert en gebruikt in Excel VBA. Ik probeerde het op een creatieve manier uit te leggen. Ik hoop dat ik voldoende uitleg heb gegeven. Als je twijfelt, vraag het dan in de comments hieronder. Ik hoor en beantwoord je graag.

Excel VBA-variabel bereik | we hebben specificeerders voor variabele toegang die definiëren van waaruit toegang tot een gedefinieerde variabele kan worden verkregen. Excel VBA is geen uitzondering. VBA heeft ook scope-specificaties. Deze scope-specificaties kunnen worden gebruikt om de zichtbaarheid/scope van een variabele in Excel VBA in te stellen.

ByRef- en ByVal-argumenten |Als een argument als ByRef-argument wordt doorgegeven aan een andere sub of functie, wordt de referentie van de werkelijke variabele verzonden. Alle wijzigingen die zijn aangebracht in de kopie van de variabele, worden weergegeven in het oorspronkelijke argument.

Verwijder bladen zonder bevestigingsvragen met VBA in Microsoft Excel|Omdat u bladen verwijdert met VBA, weet u wat u doet. U wilt Excel vertellen deze waarschuwing niet te tonen en dat verdomde blad te verwijderen.

Nieuwe werkmap toevoegen en opslaan met VBA In Microsoft Excel 2016|In deze code hebben we eerst een verwijzing naar een werkmapobject gemaakt. En toen hebben we het geïnitialiseerd met een nieuw werkmapobject. Het voordeel van deze aanpak is dat u eenvoudig bewerkingen op deze nieuwe werkmap kunt uitvoeren. Zoals opslaan, sluiten, verwijderen, etc

Geef een bericht weer op de Excel VBA-statusbalk De statusbalk in Excel kan worden gebruikt als een codemonitor. Wanneer uw VBA-code lang is en u verschillende taken uitvoert met VBA, schakelt u vaak de schermupdate uit zodat u dat scherm niet ziet flikkeren

Schakel waarschuwingsberichten uit met VBA in Microsoft Excel 2016|Deze code schakelt niet alleen VBA-waarschuwingen uit, maar verhoogt ook de tijdefficiëntie van de code. Laten we eens kijken hoe.

Populaire artikels:

50 Excel-snelkoppelingen om uw productiviteit te verhogen | Word sneller in uw taak. Met deze 50 sneltoetsen werk je nog sneller in Excel.

De VERT.ZOEKEN-functie in Excel | Dit is een van de meest gebruikte en populaire functies van Excel die wordt gebruikt om waarde op te zoeken uit verschillende bereiken en bladen.

AANTAL.ALS in Excel 2016 | Tel waarden met voorwaarden met behulp van deze geweldige functie. U hoeft uw gegevens niet te filteren om een ​​specifieke waarde te tellen. Countif-functie is essentieel om uw dashboard voor te bereiden.

Hoe de SUMIF-functie in Excel te gebruiken? | Dit is een andere essentiële functie van het dashboard. Dit helpt u bij het optellen van waarden voor specifieke voorwaarden.