Eliminar y Copiar filas a partir de su contenido.

Te envio un saludo y nuevamente solicitando tu ayuda.

Tengo una tabla de excel que contiene en la columna " I " la siguiente info. " projectsites/PBLITA/DOCUMENTATION INTERNAL/Engineering Services/2.SHOP DGWS/Piping/Test/Piping/Shop Drawings/PABRD/FG/OBSOLETO/PABRD-FG-C-A02T1-5512.01-R0A/FULL ISO ".  

Necesito realizar una macro que:

1.- Busque en todas las filas ( de la columna " I " ) las que contengan la palabra OBSOLETO y las elimine.

2.- Despues necesito que la macro busque nuevamente en toda la columna " I " y encuentre de todo el texto, la decima palabra ( en este caso PABRD, tomando en cuenta la division de diagonales invertidas ) y la copie en la columna " J " en su respectiva fila.

3.- La onceaba palabra ( en este caso FG ) y la copie en " K " ... Pero en la columna " L " copiara " PABRD-FG-C-A02T1-5512.01-R0A " tomando en cuenta que comienza con las palabras de las dos columnas anteriores .. PABRD-FG-.

Si dentro de la busqueda no llegara a encontrar cualquiera de los 3 valores antes mencionados, dejara la celda en blanco y continuara con su busqueda.

PD. ¿Se podran separar las macros? ¿La de borrar los obsoletos en una y la de copiar celdas en otra? De ser asi, te lo agradeceria mucho.

Te puedo enviar el archivo a tu correo si es necesario, y cualquier duda o comentario.

1 Respuesta

Respuesta
1

Para la primera macro:

1.- Busque en todas las filas ( de la columna " I " ) las que contengan la palabra OBSOLETO y las elimine.

¿Qué elimine al fila o la palabra "OBSOLETO"?

Si es la fila, esta es la macro:

Sub EliminarObsoleto()
'Por.Dante Amor
    For i = Range("I" & Rows.Count).End(xlUp).Row To 1 Step -1
        If InStr(1, UCase(Cells(i, "I")), "OBSOLETO") > 0 Then
            Rows(i).Delete
        End If
    Next
End Sub

Si es lo que necesitas. Por favor, no olvides valorar la respuesta.

Crea una nueva pregunta para la macro que copia.

Saludos. Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas