2014-10-09

Sustituir vocales en Excel mediante VBA

Title Para sustituir las vocales de una cadena de texto, en lugar de la función sustituir anidada, podemos crear una función definida por el usuario.

Modificamos una función usada previamente para reemplazar cadenas de texto.

Public Function ReemplazarVocales(Reemplazarcadena As String) As String

Dim Originales As Variant, Sustituciones As Variant
Dim i As Long
Originales = Array("a", "e", "i", "o", "u")
Sustituciones = Array("", "", "", "", "")
ReemplazarVocales = Reemplazarcadena
    For i = 0 To 4 'Los subíndices de matriz empiezan en 0,
                   'por tanto Originales(0) = "a"[...] Originales(4)="u"
    ReemplazarVocales = Replace(ReemplazarVocales, Originales(i), Sustituciones(i), _
    compare:=vbTextCompare) 'Comparación textual
    Next
End Function
En este caso, al contrario que con la función Sustituir con la función Replace podemos especificar que la comparación sea textual, vbTextCompare, y así no sea sensible a las mayúsculas o minúsculas. Si omitimos dicho argumento, o escribimos vbBinaryCompare, la comparación será binaria y sensible a las mayúsculas o minúsculas.

Entradas relacionadas:
Sustituir vocales en Excel mediante fórmulas

Referencias:
Replace (Función, Visual Basic)

No hay comentarios:

Publicar un comentario

Nube de datos