Planilha Excel VBA Loop autonumeracao for aninhados linha coluna Este Macro do Aplicativo Microsoft Excel VBA(Visual Basic Application), insere uma autonumeração em determinadas células da folha de planilha, obdecendo os arqumentos inseridos nas duas funções For …Next anhinhadas. Observe que fiz uma instrução for next, IMEDIATAMENTE a outra, a primeira vai localizar a Coluna, depois a outra vai rodar todas as linhas, quando terminar as linhas, volta na proxima coluna, roda até a ultima linha, volta na proxima Coluna….. isso até terminar os dois loops.
RESUMINDO…..o primeiro Loop ‘For vCol ‘- localiza a coluna 4, depois passa para o segundo Loop ‘For vLin’
‘que percorrerá todas as linhas desejadas até encontrar a última (20)
‘depois que encontrar a ultima volta para a coluna(5), volta para linha até 20
‘volta para coluna(6….. até a 16) só que adicionando(incrementando) 1 a variavel ‘x’ que vale 1
‘//=============’
Sub sbx_contador()
Dim vLin, vCol As Long
x = 1 ‘ este é o inicio do contato 1,2,3, se mudar para 6 será inicará no 6,7,8,…..
For vCol = 4 To 16 ‘observe o for aninhado…’For linha’ imediatamente ‘ao For’ coluna
For vLin = 5 To 20
Cells(vLin, vCol).Value = x
x = x + 1
Next vLin
Next vCol
End Sub
‘//===============’
‘aqui invertimos as posições das instruções For Next, (vLin, vCol)
Sub sbx_contador2()
Dim vLin, vCol As Long
x = 1 ‘ é o que inicia, se mudar para 6 por exemplo iniciará o contador do número 6
For vLin = 5 To 20
For vCol = 4 To 16 ‘observe o for aninhado…’For Col’ imediatamente ‘ao for’ vLin
Cells(vLin, vCol).Value = x
x = x + 1 ‘a cada incremento a variavel ‘x’ acrescenta 1, voce poderá mudar o valor da variavel x = 1, (iniciar contador)
Next vCol
Next vLin
End Sub
‘//===========’ SOMENTE COM OBJETIVO DE TREINAMENTO COM VBA
‘poderiamos usar varias maneiras para limpar essa área, porém fiz o descolamento de de células e área para você aprender, e pratica, faça exercicios em folha separada.
‘veja (offset(linhas, colunas) === resize(linhas, colunas)
‘a partir da célula(a1), desloca 4 linhas abaixo, 3 colunas a direita,redimensiona(RESIZE(16 linhas,15Colunas)
Sub sbx_limpar_teste()
‘[a1].Offset(4, 3).Resize(16, 13).Select ‘aqui fiz um select para voce ver que seleciona a area desejada.(Deslocamento)
[a1].Offset(4, 3).Resize(16, 13).ClearContents
End Sub
Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos
Escola Saberexcel VBA Estudos® – Treinamentos com Macros, Fórmulas e Funções.
Baixe o exemplo de planilha contendo os macros acima:
SBI Excel VBA Loops autonumeracao for aninhados lin col (26.96 kB)