none
Numeração RRS feed

  • Pergunta

  • Prezados,

    Alguém poderia me ajudar com a seguinte dúvida no excel, seguinte:

    No Excel tenho 2 colunas A e B como no exemplo abaixo. Preciso de um programa  vb que veja na Coluna B1, B2, etc... enquanto for 0 e insira na A1 a númeração sequencial de 1, 2, 3... Quando na Coluna B aparecer o 1 na coluna A inicia automaticamente a numeração novamente. Grato, se puderem me ajudar. Abç.

                    A               B
    1 1 0
    2 2 0
    3 3 0
    4 1 1
    5 2 1
    6 3 1
    7 4 1
    segunda-feira, 21 de maio de 2012 15:37

Respostas

  • Sub Exemplo()
        Dim lRow As Long
        Dim lContador As Long
        Dim lPadrão As Long
        
        lPadrão = -999
        For lRow = 1 To RowLast(Columns("B"))
            If Cells(lRow, "B") = lPadrão Then
                lContador = lContador + 1
            Else
                lContador = 1
                lPadrão = Cells(lRow, "B")
            End If
            Cells(lRow, "A") = lContador
        Next lRow
    End Sub
    
    Function RowLast(rng As Range) As Long
        'Retorna o valor da última linha povoada da coluna rng
        With rng
            On Error Resume Next
            RowLast = .Find(What:="*" _
              , After:=.Cells(1) _
              , SearchDirection:=xlPrevious _
              , SearchOrder:=xlByColumns _
              , LookIn:=xlFormulas).Row
            If RowLast = 0 Then RowLast = rng.Cells(1).Row
        End With
    End Function

    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    sábado, 26 de maio de 2012 19:23
    Moderador