¿Cómo usar la función StrComp en VBA?

La función `StrComp` en VBA se utiliza para comparar dos cadenas de texto y devuelve un valor entero que indica el resultado de la comparación. La sintaxis de la función es la siguiente:

StrComp(string1, string2, [compare])

Donde:

  • `string1` : es la primera cadena de texto que deseas comparar.
  • `string2` : es la segunda cadena de texto que deseas comparar.
  • `compare` : (opcional) especifica el tipo de comparación. Puede ser:
    • `vbUseCompareOption` (-1): Utiliza la opción de comparación definida por la sentencia `Option Compare`.
    • `vbBinaryCompare` (0): Realiza una comparación binaria, es decir, diferencia entre mayúsculas y minúsculas.
    • `vbTextCompare` (1): Realiza una comparación textual, es decir, no diferencia entre mayúsculas y minúsculas.
    • `vbDatabaseCompare` (2): Solo se utiliza en bases de datos de Microsoft Access.

El retorno de la función es un entero que puede tener los siguientes valores:

  • `-1` : `string1` es menor que `string2`
  • `0` : `string1` es igual a `string2`
  • `1` : `string1` es mayor que `string2`
  • `Null` : si cualquiera de las cadenas de texto o ambas son `Null`.

Aquí tienes un ejemplo de cómo usar `StrComp`:

Sub EjemploStrComp()
    Dim resultado As Integer
    
    ' Compara dos cadenas de texto de manera binaria (sensible a mayúsculas y minúsculas)
    resultado = StrComp("Hola", "hola", vbBinaryCompare)
    MsgBox "El resultado de la comparación binaria es: " & resultado
    
    ' Compara dos cadenas de texto de manera textual (no sensible a mayúsculas y minúsculas)
    resultado = StrComp("Hola", "hola", vbTextCompare)
    MsgBox "El resultado de la comparación textual es: " & resultado
End Sub

Este código mostrará dos cuadros de mensaje, el primero indicando `-1` (porque en una comparación binaria, «Hola» es menor que «hola»), y el segundo mostrando `0` (puesto que, al no tener en cuenta las mayúsculas, las cadenas son iguales).

Recuerda que puedes omitir el tercer argumento si deseas usar la configuración `Option Compare` establecida en el módulo de VBA o para usar la configuración predeterminada de VBA que es `vbBinaryCompare`:

resultado = StrComp("Hola", "hola")

En este caso, si no hay una sentencia `Option Compare` definida, se asume una comparación binaria y el resultado sería `-1`.

Conoce nuestra tienda

Ver más productos

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Ayúdanos a hacer crecer el proyecto

Deja un comentario