Foros aprenderaprogramar.com
Aprender a programar => De todo un poco... => Mensaje iniciado por: Lola Roches en 05 de Junio 2013, 10:48
-
Hola, el asunto es que estoy tratanto de invertir cadenas de texto o palabras en excel, pero no encuentro la manera.
Lo que quiero hacer es que si en una columna tengo mapa generar en otra columna la misma palabra pero invertida: apam
Si fuera casa la invertida sería asac, si fuera aabbcc la invertida sería ccbbaa
-
se que no es lo que preguntas pero ¿para qué sirve eso?
-
El caso es que estoy trabajando en simular un autómata, un autómata lo que hace es recibir una cadena de texto y decir si esa cadena pertenece al lenguaje. Lo que quiero hacer es generar muchas combinaciones de letras y sus "reflejos" o "palíndromos" es decir la cadena al revés por ejemplo:
aaaa ---> aaaa
aaab ---> baaa
aaac ---> caaa
aaba ---> abaa
aabb ---> bbaa
aabc ---> cbaa
aaca ---> acaa
aacb ---> bcaa
aacc ---> ccaa
-
Hola Lola puedes hacerlo usando la funcion de Visual Basic for Applications StrReverse, esta función lo que hace es devolverte un texto invertido tal y como has explicado tu en los ejemplos, saludos
-
¿Es una función de las predefinidas de Excel?
-
No digamos mas bien que es una función de Visual Basic que puedes usar para crearte una función de excel que cumpla lo que quieres de invertir cadenas
-
Ya he logrado resolverlo, digo cómo lo he hecho por si le puede servir de ayuda a otras personas.
Abrimos Excel y seguimos estos pasos:
1) Ir a la ficha programador -- > Visual Basic
2) En el menú Insertar elegimos "Módulo"
3) Ponemos en el editor de código esto:
Option Explicit
Public Function Invertir(sInputString As String) As String
Invertir = StrReverse(sInputString)
End Function
Ahora ya podemos usar la función invertir que nos devuelve un texto invertido.
-
Aclaro un par de cosas ya que me han preguntado por mensaje privado y parece que no quedó claro.
Después de haber hecho lo que expliqué para usarla un ejemplo sería escribir en una casilla:
=Invertir(B2) , de este modo si en la casilla B2 hay aabc nos devuelve en la nueva casilla cbaa, es decir, la cadena invertida.
Y otra cosa, para que la función quede guardada en el archivo y podamos seguir usándola para guardar el archivo hay que hacerlo con tipo de archivo Libro Excel como "Libro de excel habilitado para macros (*.xlsm)