¿Qué es un Palíndromo?
Un Palíndromo es una palabra o frase que se lee igual de izquierda a derecha, que de derecha a izquierda, se suelen omitir los espacios en blanco, considerar las mayúsculas y minúsculas como iguales, y los acentos suelen ser considerados equivalentes a las vocales sin acento al momento de determinar si un texto es un Palíndromo.
Ejemplos de Palíndromo:
"Somos"
"Dábale arroz a la zorra el abad"
Prueba a leerlo de derecha a izquierda… ¿Lo ves?
Un número también puede ser un palíndromo, pero en ese caso hablamos de números capicúa: 34.443, 181, 2442…
¿Cómo crear una macro que verifique que la palabra es palíndromo?
Empecemos con la siguiente macro para resolver los casos sencillos, en un modulo use:
Sub palindromo()
Dim palabras As String
Dim invertida As String
palabra = Cells(6, 2)
invertida = StrReverse(palabra)
If palabra = invertida Then
Cells(6, 3) = "Si es palíndromo"
Else
Cells(6, 3) = "No es palíndromo"
End If
End Sub
a) A continuación, se explicará cada parte de este módulo:
• palabra = Cells(6, 2): obtenemos el dato de la celda que está en la fila 6 y columna B, a este valor le colocamos palabra.
• invertida = StrReverse(palabra): utilizamos la función StrReverse, que devuelve una cadena cuyos caracteres están en orden inverso de la variable palabra.
• If palabra = invertida Then Cells(6, 3) = "Si es palíndromo": si la variable palabra e invertida son iguales, entonces "Si es palíndromo", el cual será colocado en la celda de la fila 6 y columna C.
• Else Cells(6, 3) = "No es palíndromo" End If: de lo contrario "No es palíndromo", el cual será colocado en la celda de la fila 6 y columna C.
b) En la siguiente Imagen, observamos que se colocó la palabra ana. Y al hacer click en Verificar texto, obtenemos en la celda C6 que "Si es palíndromo".