Me gusta VBA

Operador tipo VBA

Like es un operador en VBA y este es un operador de comparación que compara una cadena dada como argumento en un conjunto de cadenas y coincide con el patrón, si el patrón coincide, el resultado obtenido es verdadero y si el patrón no coincide, entonces el El resultado obtenido es falso, este es un operador incorporado en VBA.

El operador "LIKE" es el operador más infrautilizado a pesar de su excelente uso. No he visto a muchas personas que usen este operador en toda su extensión en su codificación, de hecho, soy uno de ellos que no usa este operador con bastante frecuencia. El operador "VBA LIKE" nos permite hacer coincidir el patrón de la cadena con la cadena completa. Al usar el operador VBA LIKE, podemos comparar dos cadenas con el patrón dado. Podemos verificar si la cadena contiene una subcadena en VBA o también podemos si la cadena contiene algún formato específico. Si el patrón coincide con la cadena, el operador VBA LIKE devuelve VERDADERO o FALSO.

Al hacer coincidir cadenas, debemos usar caracteres comodín para el patrón que especificamos. A continuación se muestran los comodines que usamos en el operador VBA LIKE.

  • Signo de interrogación (?): Se utiliza para hacer coincidir cualquier carácter de la cadena. Por ejemplo, si tenemos una cadena "CAT" y el patrón es "C? T", entonces el operador VBA LIKE devuelve TRUE. Si la cadena es "CATCH" y los patrones son "C? T", el operador VBA LIKE devuelve FALSE.
  • Asterisco (*): coincide con cero o más caracteres. Por ejemplo, si la cadena es "Bueno" y el patrón es "G ** d", el operador VBA LIKE devuelve TRUE.
  • Corchetes ([]): coincide con cualquier carácter individual especificado entre corchetes.
  • [Char-Char]: coincide con cualquier carácter en el rango Char-Char.
  • [! Caracteres]: coincide con cualquier carácter que no esté en la lista.
  • [! Char-Char]: coincide con cualquier carácter individual que no esté en el rango Char-Char.

Ejemplos de operador VBA LIKE

Veamos ahora algunos de los ejemplos del operador VBA LIKE.

Puede descargar esta plantilla de Excel como VBA aquí - Plantilla de Excel como VBA

Ejemplo n. ° 1: con signo de interrogación

Código:

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

En el código anterior, hemos proporcionado la cadena como "Bueno" y el patrón es "Go? D". Dado que el signo de interrogación puede coincidir con un solo carácter, mostrará el resultado como "Sí".

Ahora cambiaré la cadena a "Buenos días".

Código:

 Sub QuestionMark_Example1 () Dim k As String k = "Buenos días" Si k Me gusta "Ir? D" Entonces MsgBox "Sí" Else MsgBox "No" End If End Sub 

En este caso, mostrará "No" porque hemos agregado una palabra más a la cadena, es decir, Mañana. Para hacer coincidir cualquier número de caracteres, necesitamos usar el asterisco.

Ejemplo n. ° 2: con asterisco

Código:

 Sub QuestionMark_Example2 () Dim k As String k = "Buenos días" Si k Me gusta "* Bueno *" Entonces MsgBox "Sí" Else MsgBox "No" End If End Sub 

En el ejemplo anterior, agregué dos asteriscos antes y después del carácter "* Bueno *". Esto coincidirá con la palabra "Bueno" en la cadena "Buenos días" y devuelve "Sí".

Ejemplo n. ° 3: con corchetes []

Código:

 Sub QuestionMark_Example3 () Dim k As String k = "Buenos días" Si k Me gusta "* [M] *" Entonces MsgBox "Sí" Else MsgBox "No" End If End Sub 

El código anterior coincide con la única letra mencionada en el corchete "M" y devuelve el resultado como Sí.

Ejemplo n. ° 4: con corchetes y alfabetos [AZ]

Código:

 Sub QuestionMark_Example4 () Dim k As String k = "Buenos días" Si k Me gusta "* [AD] *" Entonces MsgBox "Sí" Else MsgBox "No" End If End Sub 

En lo anterior, mencioné los caracteres para hacer coincidir de A a D.

Esto devolverá "No" porque no hay caracteres de la A a la D en la cadena "Buenos días" .

Ahora cambiaré el patrón a [AH]

Código:

 Sub QuestionMark_Example4 () Dim k As String k = "Buenos días" Si k Me gusta "* [AH] *" Entonces MsgBox "Sí" Else MsgBox "No" End If End Sub 

Esto devolverá "Sí" porque de A a H tenemos un carácter "G" en la cadena "Buenos días"

Así, podemos usar el operador VBA "LIKE" para hacer coincidir cualquier cadena del patrón con caracteres comodín.