Código VBA Como filtrar cadena de texto con un numero de caracteres específicos.

Requiero de su ayuda para definir el código VBA, tengo una tabla de 10 columnas y deseo filtrar en la colomna A, solo los datos que tengan de 1 a 6 caracteres, luego de dicho filtro deseo elinarlos.

Me gustaría ver las dos formas de filtrarlos, por ejemplo que pueda filtrar las de 4 caracteres y también que pueda filtrar las de 1 a 6 cacateres.

2 respuestas

Respuesta

Te dejo una macro que directamente te elimina las celdas o filas donde el texto de la col A sea del largo solicitado.

Entra al Editor de macros, inserta un módulo y allí copia el siguiente código.

Deja solo 1 de las 2 instrucciones 'Delete' ya sea que quieras eliminar la fila completa o solo la celda de la col A.

Sub Elimina_LargoTextos()
'x Elsamatilde
'se eliminan las filas (o solo celdas) de cierto largo en col A
largo = InputBox("Ingresa el largo máximo del texto para quitar.")
If Val(largo) = 0 Then MsgBox "Número inválido. Se cancela el proceso.": Exit Sub
'primera fila con datos en col A ......AJUSTAR
i = 2
While Cells(i, 1) <> ""   'se recorre la col A desde la fila 2 hasta la última ocupada
    If Len(Cells(i, 1)) <= Val(largo) Then
        Cells(i, 1).EntireRow.Delete       'elimina la fila completa
        'Cells(i, 1).Delete Shift:=xlUp    'solo elimina la celda de la col A
    Else
        i = i + 1
    End If
Wend
End Sub

Comentame si, en cambio, prefieres una macro de filtrado y otra macro para un posterior borrado de datos. En ese caso indicame los rangos de tus datos, si se trata de un objeto Tabla o rango común y  si necesitas eliminar la fila completa o solo la celda.

Te envío este mensaje porque el foro estuvo fuera de servicio por varios días y quizás no recibiste aviso de la respuesta a tu consulta.

Sdos!

Respuesta

Te puede ayudar:

https://youtu.be/ch7sb2Mh_Ow 

Sal u dos

Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas