Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

extraer unicamente letras de una celda en excel macro

Estas en el tema de extraer unicamente letras de una celda en excel macro en el foro de Visual Basic clásico en Foros del Web. hola buenas noches, soy novato en esto pero necesito de su apoyo,quiero extraer unicamente las letras de una celda pero por medio de una macro, ...
  #1 (permalink)  
Antiguo 21/01/2011, 01:47
Avatar de gerardo_goh  
Fecha de Ingreso: noviembre-2008
Mensajes: 107
Antigüedad: 15 años, 5 meses
Puntos: 1
extraer unicamente letras de una celda en excel macro

hola buenas noches, soy novato en esto pero necesito de su apoyo,quiero extraer unicamente las letras de una celda pero por medio de una macro, ejemplo contenido de la celda A1:
"hola %$a todos de este foro", el resultado en la celda B1:holaatodosdeesteforo, muchas gracias por su apoyo,saludos!!!
  #2 (permalink)  
Antiguo 21/01/2011, 10:17
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 meses
Puntos: 53
Respuesta: extraer unicamente letras de una celda en excel macro

Hola, en primer lugar debes tener muy claro que caracteres deseas filtrar, te dejo una posible opción aunque tal vez no sea la más idónea, te aseguro que funciona:


Código vb:
Ver original
  1. Public Function SoloLetras(Cadena As String) As String
  2.   Dim Validos As String, Posicion As Integer, Caracter As String
  3.   Validos = "abcdefghijklmnopqrstuvwxyz"
  4.   Validos = Validos & "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  5.   Validos = Validos & "áéíóúàèìòù" ' ...
  6.  For Posicion = 1 To Len(Cadena)
  7.     Caracter = Mid$(Cadena, Posicion, 1)
  8.     If InStr(Validos, Caracter) > 0 Then SoloLetras = SoloLetras & Caracter
  9.   Next
  10. End Function

Te comento lo de la más idonea porque probablemente si coges la tabla Ascii y comparas el valor numérico de la tecla, tal vez sea mas rápido.

Saludos
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...
  #3 (permalink)  
Antiguo 22/01/2011, 22:13
Avatar de gerardo_goh  
Fecha de Ingreso: noviembre-2008
Mensajes: 107
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: extraer unicamente letras de una celda en excel macro

Cita:
Iniciado por erbuson Ver Mensaje
Hola, en primer lugar debes tener muy claro que caracteres deseas filtrar, te dejo una posible opción aunque tal vez no sea la más idónea, te aseguro que funciona:


Código vb:
Ver original
  1. Public Function SoloLetras(Cadena As String) As String
  2.   Dim Validos As String, Posicion As Integer, Caracter As String
  3.   Validos = "abcdefghijklmnopqrstuvwxyz"
  4.   Validos = Validos & "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  5.   Validos = Validos & "áéíóúàèìòù" ' ...
  6.  For Posicion = 1 To Len(Cadena)
  7.     Caracter = Mid$(Cadena, Posicion, 1)
  8.     If InStr(Validos, Caracter) > 0 Then SoloLetras = SoloLetras & Caracter
  9.   Next
  10. End Function

Te comento lo de la más idonea porque probablemente si coges la tabla Ascii y comparas el valor numérico de la tecla, tal vez sea mas rápido.

Saludos
  #4 (permalink)  
Antiguo 22/01/2011, 22:14
Avatar de gerardo_goh  
Fecha de Ingreso: noviembre-2008
Mensajes: 107
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: extraer unicamente letras de una celda en excel macro

Cita:
Iniciado por erbuson Ver Mensaje
Hola, en primer lugar debes tener muy claro que caracteres deseas filtrar, te dejo una posible opción aunque tal vez no sea la más idónea, te aseguro que funciona:


Código vb:
Ver original
  1. Public Function SoloLetras(Cadena As String) As String
  2.   Dim Validos As String, Posicion As Integer, Caracter As String
  3.   Validos = "abcdefghijklmnopqrstuvwxyz"
  4.   Validos = Validos & "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  5.   Validos = Validos & "áéíóúàèìòù" ' ...
  6.  For Posicion = 1 To Len(Cadena)
  7.     Caracter = Mid$(Cadena, Posicion, 1)
  8.     If InStr(Validos, Caracter) > 0 Then SoloLetras = SoloLetras & Caracter
  9.   Next
  10. End Function

Te comento lo de la más idonea porque probablemente si coges la tabla Ascii y comparas el valor numérico de la tecla, tal vez sea mas rápido.

Saludos


Muchisimas gracias por tu ayuda me funciono de maravilla, ahora entiendo mas del ciclo form Saludos!!!
  #5 (permalink)  
Antiguo 23/01/2011, 03:10
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 meses
Puntos: 53
Respuesta: extraer unicamente letras de una celda en excel macro

Un saludo y hasta otra ocasión.
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...

Etiquetas: celda, excel, extraer, letras, macro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:21.