Excel VBA-zaak

Er is geen directe voorziening in Excel om een ​​zin of uitspraak op te roepen door naar een woord of nummer te zoeken. Dit kan met behulp van invoegfuncties, maar er zijn te veel argumenten voor nodig. VBA Case gebruikt om een ​​of een groep uitspraken aan te roepen, afhankelijk van de waarde van een expressie. Als de uitdrukking of hoofdletter in gedefinieerde waarden of zin heeft, krijgen we als we het hoofdnummer invoeren de waarden of zin die voor dat nummer of alfabet zijn gedefinieerd.

Hieronder zijn de volgende syntaxis voornamelijk vereist;

  • Selecteer hoofdletter - Selecteer hoofdletter is de tekstuitdrukking die wordt gebruikt in numeriek of string.
  • Hoofdletter - Hoofdletter heeft expressionist-n en statement-n wat betekent dat expressionist vereist dat er een hoofdletter is en statement-n is optioneel als testuitdrukkingen overeenkomen met een van expressionist-n.
  • Else Statement - Als de testexpressie niet overeenkomt met een van de Case-expressies, verschijnt de Else-verklaring.

Hoe Excel VBA Case Statement te gebruiken?

We zullen leren hoe we de Excel VBA Case-verklaring kunnen gebruiken met een paar voorbeelden.

U kunt deze VBA Case Excel Template hier downloaden - VBA Case Excel Template

Excel VBA Case Statement - Voorbeeld # 1

We maken een VBA-case voor een tekstoverzicht met cijfers voor verschillende dagen van een week. Volg de onderstaande stappen om Case Statement in VBA te gebruiken.

Stap 1: Ga naar het VBA-venster en open een nieuwe module door Module te selecteren op de menutab Invoegen, zoals hieronder weergegeven.

Stap 2: Zodra we dat doen, krijgen we een nieuwe module geopend. Schrijf nu Subcategorie in de uitgevoerde functie of onder een andere naam volgens uw keuze, zoals hieronder weergegeven.

Code:

 Sub Case_Statement1 () End Sub 

Stap 3: Terwijl we de case-instructie met cijfers maken, definieert u eerst een geheel getal zoals hieronder wordt weergegeven.

Code:

 Sub Case_Statement1 () Dim A als Integer End Sub 

Stap 4: Wijs nu een invoervak ​​toe aan het gedefinieerde gehele getal en voer de vaknaam in met " Voer dag van de week in ", zoals hieronder weergegeven. Het zal ons informeren om het zaaknummer in dit vak in te voeren om het antwoord te krijgen.

Code:

 Sub Case_Statement1 () Dim A als geheel getal A = InputBox ("Enter Day of Week") End Sub 

Stap 5: Gebruik nu de opdracht Select om het gedefinieerde integer met case te integreren, zoals hieronder wordt getoond. Het zal Case als Integer toewijzen.

Code:

 Sub Case_Statement1 () Dim A als Integer A = InputBox ("Voer dag van de week in") Selecteer Case A End Sub 

Stap 6: Omdat we 7 dagen in een week hebben, dus vanaf maandag als geval 1 gezien maandag de eerste werkdag is tot de laatste dag van de week die zondag is als geval 7 . En om alle cases in de tekst- of berichtenbox af te drukken, gebruiken we de opdracht MsgBox met alle Cases van 1 tot 7 voor elke dag van de week, zoals hieronder weergegeven.

Code:

 Sub Case_Statement1 () Dim A als Integer A = InputBox ("Enter Day of Week") Selecteer Case A Case 1: MsgBox "Day is Monday" Case 2: MsgBox "Day is Tuesday" Case 3: MsgBox "Day is Wednesday" Case 4: MsgBox "Dag is donderdag" Geval 5: MsgBox "Dag is vrijdag" Geval 6: MsgBox "Dag is zaterdag" Geval 7: MsgBox "Dag is zondag" Einde Sub 

Stap 7: Nu komt het Else Statement-gedeelte van Case waar we zullen schrijven als een van de gedefinieerde cases niet WAAR is, dan zullen we Else Case-statementbericht krijgen als " Incorrect Day ". En ook hiervoor zullen we MsgBox gebruiken en End Select it.

Code:

 Sub Case_Statement1 () Dim A als Integer A = InputBox ("Enter Day of Week") Selecteer Case A Case 1: MsgBox "Day is Monday" Case 2: MsgBox "Day is Tuesday" Case 3: MsgBox "Day is Wednesday" Case 4: MsgBox "Dag is donderdag" Casus 5: MsgBox "Dag is vrijdag" Casus 6: MsgBox "Dag is zaterdag" Casus 7: MsgBox "Dag is zondag" Casus Anders: MsgBox "Onjuiste dag" Einde Selecteer einde Sub 

Stap 8: Eens klaar, compileer en voer de code uit. We krijgen een berichtvenster waarin wordt gevraagd om de dag van de week in te voeren, zoals hieronder wordt weergegeven. Voer hier een zaaknummer van 1 tot 7 in. We zullen 5 invoeren en kijken wat er komt. We hebben het bericht gekregen dat " Day is Friday " is toegewezen aan Case 5.

Stap 9: Laten we nu een ander nummer invoeren dan van 1 tot 7. Laat het 9 zijn. Zodra we dit hebben gedaan, zullen we het bericht krijgen als " Onjuiste dag " zoals hieronder getoond, omdat er slechts 7 dagen in een week zijn. Andere waarde geeft onderstaande foutmelding die we hebben gedefinieerd in Else Case Statement.

Excel VBA Case Statement - Voorbeeld # 2

Op een vergelijkbare manier zullen we in dit voorbeeld VBA Case gebruiken om tekstberichten af ​​te drukken met behulp van String. We zullen Case gebruiken om een ​​ander spreekwoord af te drukken als tekstverklaring.

Stap 1: Open hiervoor een nieuwe module van het tabblad Invoegen en schrijf Subcategorie in de naam van de uitgevoerde functie zoals hieronder getoond.

Code:

 Sub Case_Statement2 () End Sub 

Stap 2: Definieer nu een tekenreeks waar we de tekstwaarden opslaan zoals hieronder weergegeven.

Code:

 Sub Case_Statement2 () Dim A Als String End Sub 

Stap 3: wijs nu een invoervak ​​toe aan de gedefinieerde tekenreeks met de zin " Voer het woord van uw keuze in ".

Code:

 Sub Case_Statement2 () Dim A As String A = InputBox ("Voer het woord van uw keuze in") End Sub 

Stap 4: Open nu een Select Case-lus en eindig met End Select voor de gedefinieerde tekenreeks A.

Code:

 Sub Case_Statement2 () Dim A als String A = InputBox ("Voer het woord van uw keuze in") Selecteer geval A Einde Selecteer einde Sub 

Stap 5: Schrijf nu in de Select Case-lus voor tekenreeks A een spreekwoord met een berichtvenster om op te duiken. Hier hebben we 3 spreekwoorden geselecteerd, beginnend bij Case 1 tot 3 met berichtenboxopdracht MsgBox zoals hieronder getoond.

Code:

 Sub Case_Statement2 () Dim A als String A = InputBox ("Voer het woord van uw keuze in") Selecteer Case A Case 1: MsgBox "Zo is de manier van leven" Case 2: MsgBox "Wat rond gaat, komt rond" Case 3: MsgBox "Tit For Tat" End Selecteer End Sub 

Stap 6: De bovenstaande verklaring is nu alleen WAAR tussen nummers van geval 1 tot 3. Afgezien van dit nummer moeten we ook FALSE statement definiëren in Else conditie zoals hieronder getoond.

Code:

 Sub Case_Statement2 () Dim A als String A = InputBox ("Voer het woord van uw keuze in") Selecteer Case A Case 1: MsgBox "Zo is de manier van leven" Case 2: MsgBox "Wat rond gaat, komt rond" Case 3: MsgBox "Tit For Tat" Case Else: MsgBox "Niets gevonden" End Select End Sub 

Stap 7: compileer nu en voer de code uit. We zullen een bericht ontvangen waarin u wordt gevraagd om een ​​woord naar keuze in te voeren.

Zoals we hierboven al enkele gevallen met getallen hebben gedefinieerd, zullen we hier elk getal van 1 tot 3 invoeren. Laten we 2 invoeren en kijken wat er komt.

Zoals we hierboven kunnen zien, wordt het in case 2 opgeslagen spreekwoord getoond in het berichtenvak.

Stap 8: Laten we nu testen met een ander nummer of alfabet dan 1 tot 3. Laten we A nemen. Omdat we niets voor A hebben gedefinieerd, kregen we een foutmelding als Niets gevonden .

Voordelen van VBA Case Statement

  • Het is niet nodig om een ​​grote functie-invoeging in Excel te schrijven in plaats van VBA Case Statement is vrij kort.
  • Het is heel nuttig bij het maken van een vragenlijst waar de invoer in het kort komt.
  • Snelste en eenvoudigste manier om een ​​methode toe te voegen voor het toevoegen van case-instructies.
  • Minder kans op een foutmelding.

Dingen om te onthouden

  • Vergeet niet om het Excel-bestand op te slaan als Macro-enabled Excel, hierdoor kunnen we de aangemaakte code meerdere keren gebruiken.
  • In de Select Case-lus kunnen we ook Alfabetten gebruiken in plaats van Nummers met behulp van de opdracht String.
  • Definieer de Else-verklaring altijd zodanig dat de betekenis van het missen van een punt duidelijk is.
  • Complexe vragenlijsten kunnen ook worden gevormd met behulp van meerdere en verschillende opdrachten.

Aanbevolen artikelen

Dit is een leidraad geweest voor Excel VBA Case Statment. Hier hebben we besproken hoe u Excel VBA Case kunt gebruiken, samen met enkele praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. Excel VBA MsgBox
  2. Volledige gids voor VBA bij fout
  3. Getallen opmaken met VBA-nummernotatie
  4. Hoe VBA TRIM gebruiken?

Categorie: