¿Como enumerar en automático sólo cuando tenga cantidad en col "L"?

Para Dante Amor

Tengo el siguiente problema espero me puedas ayudar de favor.

Necesito enumerar en automatico en col "K" solo cuando tenga importe en columna L

Quise adaptar tu macro a mi situación pero me enumera aun cuando no tengo importe en la columna "L"

Private Sub Worksheet_Change(ByVal Target As Range)
'Dante Amor
 Dim c As Range, rng As Range
  Dim n As Variant
Set rng = Intersect(Target, Range("L:L"), Rows("12:" & Rows.Count))
If Not rng Is Nothing Then
Application.EnableEvents = False
For Each c In rng
     If c.Column = 12 Then
     n = Range("k" & c.Row - 1)
   If IsNumeric(n) Then n = n + 1 Else n = 0
   'If Range("L" & c.Row) 0 Then n = n + 1 Else n = 0
      Range("K" & c.Row) = n
     End If
Next
Application.EnableEvents = True
End If
End Sub

1 respuesta

Respuesta
1

Prueba lo siguiente y me comentas.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por Dante Amor
  Dim c As Range, rng As Range
  Dim n As Variant
  Set rng = Intersect(Target, Range("L:L"), Rows("12:" & Rows.Count))
  If Not rng Is Nothing Then
    Application.EnableEvents = False
    For Each c In rng
      If c.Column = 12 Then
        If IsNumeric(c.Value) And c.Value <> "" Then
          n = WorksheetFunction.Max(Range("K12:K" & c.Row))
          n = n + 1
          Range("K" & c.Row) = n
        End If
      End If
    Next
    Application.EnableEvents = True
  End If
End Sub

No hace nada

deseo enumerar en la columkna "L" Siempre y cuando detecte cambios en la columna L , o sea cuando en la columna "L" sea diferente a espacios, Gracias

Ejecuta esta macro

sub en
Application.EnableEvents = True
end sub

después regresa a tu hoja y modifica un valor en la columna L. en automático pondrá un número en la columna K

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas