VBA Like Operator (eenvoudige voorbeelden) - Hoe "Vind ik leuk" te gebruiken in Excel VBA?

Inhoudsopgave

VBA-achtige operator

Like is een operator in VBA en dit is een vergelijkingsoperator die een gegeven string vergelijkt als argument in een set strings en het komt overeen met het patroon, als het patroon overeenkomt, is het verkregen resultaat waar en als het patroon niet overeenkomt, dan is het verkregen resultaat is false, dit is een ingebouwde operator in VBA.

De operator "LIKE" is de meest onderbenutte operator ondanks het geweldige gebruik ervan. Ik heb niet veel mensen gezien die deze operator volledig gebruiken bij het coderen. Ik ben zelfs een van hen die deze operator niet vaak gebruikt. Met de operator "VBA LIKE" kunnen we het patroon van de tekenreeks vergelijken met de volledige tekenreeks. Door de VBA LIKE-operator te gebruiken, kunnen we twee strings vergelijken met het gegeven patroon. We kunnen controleren of de string een substring bevat in VBA, of we kunnen ook controleren of de string een specifiek formaat bevat. Als het patroon overeenkomt met de tekenreeks, retourneert de operator VBA LIKE TRUE of anders FALSE.

Bij het matchen van strings, moeten we jokertekens gebruiken voor het patroon dat we specificeren. Hieronder staan ​​de jokertekens die we gebruiken in de VBA LIKE-operator.

  • Vraagteken (?): Dit wordt gebruikt om een ​​willekeurig teken uit de string te matchen. Als we bijvoorbeeld een tekenreeks "CAT" hebben en het patroon is "C? T", retourneert de operator VBA LIKE TRUE. Als de tekenreeks "CATCH" is en de patronen zijn "C? T", retourneert de operator VBA LIKE FALSE.
  • Asterisk (*): dit komt overeen met nul of meer tekens. Als de tekenreeks bijvoorbeeld 'Goed' is en het patroon 'G ** d', retourneert de operator VBA LIKE WAAR.
  • Brackets (()): dit komt overeen met elk willekeurig teken dat tussen de haakjes is opgegeven.
  • (Char-Char): dit komt overeen met elk enkel teken in het bereik Char-Char.
  • (! Chars): dit komt overeen met elk enkel teken dat niet in de lijst staat.
  • (! Char-Char): dit komt overeen met elk enkel teken dat niet in het bereik Char-Char is.

Voorbeelden van VBA LIKE Operator

Laten we nu enkele voorbeelden van de VBA LIKE-operator bekijken.

Voorbeeld # 1 - met vraagteken

Code:

Sub QuestionMark_Example1 () Dim k As String k = "Good" If k Like "Go? D" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

In de bovenstaande code hebben we de string opgegeven als 'Goed' en het patroon is 'Go? D'. Omdat het vraagteken overeenkomt met één teken, wordt het resultaat weergegeven als 'Ja'.

Nu zal ik de string veranderen in "Good Morning".

Code:

Sub QuestionMark_Example1 () Dim k As String k = "Good Morning" If k Like "Go? D" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

In dit geval wordt "Nee" weergegeven omdat we nog een woord aan de tekenreeks hebben toegevoegd, namelijk Ochtend. Om een ​​willekeurig aantal tekens te matchen, moeten we de asterisk gebruiken.

Voorbeeld # 2 - Met Asterisk

Code:

Sub QuestionMark_Example2 () Dim k As String k = "Good Morning" If k Like "* Good *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

In het bovenstaande voorbeeld heb ik twee sterretjes voor en na het teken "* Goed *" toegevoegd. Dit komt overeen met het woord 'Goed' in de tekenreeks 'Goedemorgen' en retourneert 'Ja'.

Voorbeeld # 3 - Met haakjes ()

Code:

Sub QuestionMark_Example3 () Dim k As String k = "Good Morning" If k Like "* (M) *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

De bovenstaande code komt overeen met de enkele letter die tussen haakjes "M" wordt vermeld en retourneert het resultaat als Ja.

Voorbeeld # 4 - Met haakjes en alfabetten (AZ)

Code:

Sub QuestionMark_Example4 () Dim k As String k = "Good Morning" If k Like "* (AD) *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

In het bovenstaande heb ik de karakters genoemd die overeenkomen van A tot D.

Hiermee wordt 'Nee' geretourneerd omdat er geen tekens van A tot D in de tekenreeks 'Goedemorgen' staan.

Nu zal ik het patroon veranderen naar (AH)

Code:

Sub QuestionMark_Example4 () Dim k As String k = "Good Morning" If k Like "* (AH) *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

Hiermee wordt 'Ja' geretourneerd, omdat we van A tot H een teken 'G' hebben in de tekenreeks 'Goedemorgen'.

Op deze manier kunnen we de VBA "LIKE" -operator gebruiken om elke tekenreeks uit het patroon te matchen met jokertekens.

Interessante artikelen...