Macro reemplazar de acuerdo al primer numero de la columna

Tengo un listado de números desde la celda a1;dd40 y tengo un listado de números en la columna dq

La idea es que si algún numero de la columna dq que este en el rango a1;dd40 me lo reemplace por el primer numero de la columna dq y mediante un mensaje me de la opción de dejarlo como estaba o cambiarlo

1

1 Respuesta

2.096.215 pts. En mi sitio encontraran material de ayuda, ejemplos...

Esta sería la macro que necesitas con el agregado del ajuste de formato. Observa que en la búsqueda también se coloca el formato de 4 dígitos para que coincida y no te salte el error que me mencionaste.

Sub buscar_reemplazar_colorear()
Set DATOS = Range("a1:co40").CurrentRegion
Set lista = Range("dj2").CurrentRegion
MATRIZ = DATOS
With lista
    For i = 1 To .Rows.Count
        numeros = .Cells(i, 1)
        cuenta = WorksheetFunction.CountIf(DATOS, numeros)
        If cuenta > 0 Then
            For j = 1 To cuenta
                If j = 1 Then Set busca = DATOS.Find(Format(numeros, "0000"), LookAt:=xlWhole)
                If j > 1 Then Set busca = DATOS.FindNext(busca)
                celda = busca.Address
                With Range(celda)
                    .NumberFormat = "@"
                    .Value = Format(lista.Cells(1, 1), "0000")
                    .Interior.ColorIndex = 44
                    .Select
                End With
            Next j
        Else
            GoTo SIGUIENTE
        End If
        ASK = MsgBox("DEJAR TODO COMO ESTABA?", vbYesNo, "AVISO")
        If ASK = 7 Then GoTo SALIDA
        Range(DATOS.Address) = MATRIZ
SIGUIENTE:
    Next i
End With
SALIDA:
End Sub

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas