Apoyo con código para Excel
Saludos Luis_P
Hola pues mira que ya me ha estado apoyando Luismondelo pero como me están super presionando por acá quería ver si podía adelantar algo contigo.
el problema original es que una columna con datos alfanuméricos, de mas de 135,000 registros puede tener contener caracteres texto juntos, pero necesitamos encontrar solo aquellos que juntos sean de 4 o mas, por que según esto a partir de 4 caracteres texto juntos puede ser ya una palabra clave. Entonces Luis mondelo me ayudo con un código:
Sub letras() columna = ActiveCell.Offset(0, 1).Column tope = Len(ActiveCell) Do While ActiveCell.Value <> "" For x = 1 To tope + 1 extrae = Mid(ActiveCell, x, 1) If extrae = "" And Len(lista) > 3 Then Cells(ActiveCell.Row, columna).Value = lista lista = "" columna = columna + 1 End If If Not IsNumeric(extrae) Then lista = lista & extrae End If If IsNumeric(extrae) And Len(lista) > 3 Then Cells(ActiveCell.Row, columna).Value = lista lista = "" columna = columna + 1 End If If IsNumeric(extrae) And Len(lista) < 3 Then lista = "" End If Next ActiveCell.Offset(1, 0).Select columna = ActiveCell.Offset(0, 1).Column Loop End Sub
Luego encontré unos problemas y lo modifiqué, (el código que ves ahora es ya modificado) bueno aunque no fué la gran cosa solo cambie una cosa, acá abajo te cito lo que le pregunte. (luismondelo no esta disponible por ahora por eso pido de tu apoyo)
"...Bueno pues si hace el recorrido y extrae las letras, pero todos los resultados los imprimía en la columna siguiente en la <<fila 1 >>, leyendo un poquito los manuales que hay en linea y rezándole a San Google, pues encontré útil reemplazar el numero de celda por fila activa
Antes: Cells(1, columna).Value = lista
Después: Cells(ActiveCell.Row, columna).Value = lista
Y voila! Todo bien, pero encontré una falla,
MARTINEZ119 (aquí todo bien, pues trae MARTINEZ)
ORD37730493 (auí también por que no trae nada, eso es correcto)
FNA98265CHO (aquí empieza el problema, pues trae ORDFNA, o sea revuelve el anterior)
ORD37740964 (CHOORD)
ORD37741081 (aquí bien por que no trae nada)
ORD37731881 ORDORD "
cres que me puedas ayudar un poco? Saludos y desde ya, muchas gracias!