Como quitar color de una celda, desde una macro en BVA.

Tengo una macro, que al momento de insertar datos nuevos que aun no han terminado el proceso por el cual deben pasar, los resalta en color rojo y de este modo se que estos datos están pendientes.

Para dar el proceso del Archivo por terminado necesito que la celda retorne a su color original en este caso blanco, Sin necesidad de cerrar mi macro, sino únicamente seleccionar el dato desde el listbox.

1 respuesta

Respuesta
2

H o l a:

El siguiente código es para poner el color rojo en las celdas cuando creas uno nuevo

Private Sub CommandButton8_Click()
'Actualizar del listbox2 a las celdas y al cmbLista
    If ListBox2.ListCount = 0 Then
        MsgBox "No hay registros a actualizar"
        Exit Sub
    End If
    If cmbLista = "" Then
        MsgBox "Tienes que seleccionar un cliente"
        cmbLista.SetFocus
        Exit Sub
    End If
    Set h = Sheets("Archivo 2015")
    Set b = h.Columns("A").Find(cmbLista, lookat:=xlWhole)
    If Not b Is Nothing Then
        carpeta = h.Cells(b.Row, "D")
        ini = b.Row + 1
        For i = 0 To ListBox2.ListCount - 1
            h.Rows(ini).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow
            h.Cells(ini, "B") = CDate(ListBox2.List(i, 0))
            h.Cells(ini, "B").Interior.ColorIndex = 3
            h.Cells(ini, "C") = ListBox2.List(i, 1)
            h.Cells(ini, "C").Interior.ColorIndex = 3
        Next
        Fin = ini
        For i = ini To h.Range("B" & Rows.Count).End(xlUp).Row
            If h.Cells(i, "A") = "" Then
                Fin = i
            Else
                Exit For
            End If
        Next
        With h.Sort
            .SortFields.Clear: .SortFields.Add Key:=h.Range("B" & ini & ":B" & Fin)
            .SetRange h.Range("B" & ini & ":C" & Fin): .Header = xlGuess: .Apply
        End With
        cmbLista_Change
        MsgBox "Datos actualizados"
    End If
End Sub

Sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas