Prezado Amigo Pedro,
A maior dificuldade de todos os aprendizes de Microsoft Excel VBA(Visual Basic Application), acontece quando precisa extrair um relatório por meio de macros, deslocar células em uma coluna e inserir uma soma, esse é o grande fantasma, porque?, é muito simples, o aluno que quiser aprender programar e desenvolver projetos ms excel vba, tem por obrigação, aprender a lidar com as funções offset(Desloc), localizar a primeira linha, localizar a última linha de determinadas colunas e em determinadas planilhas, a grande dificuldade de todos estão ai nesse ponto, como fazer um loop, usar instrução Do Loop, While Wend, Do While , Do While Until, For next, IFF e If ..Else.. Then, como Aprender?. Praticando com exemplos específicos; vou escrever sobre esse assunto, vou fazer umas 200 ou 300 planilhas mostrando exemplos, se praticar ficará bom, pois esse é o caminho para aprender a desenvolver planilhas automatizadas, inclusives com objetos, aprender sobre o uso das WorksheetFunctions que são muito poderosas e fácil de usar.
Então, logo farei as planilhas com Loops e estrutura de decisão, para que você possa treinar com esse tipo de programação.
Estou disponibilizando uma planilha que faz tudo isso ai. Para você ir aprendendo a lidar com os Loops e desclocamentos de dados.
Aprender a programar depende pura e exclusivamente de seu esforço, força de vontade e necessidade em aprender, a criatividade acontece com a prática.
Fique com Deus, - Expedito Marcondes
Sub importar_dados_baseado_criterio()
Dim i As Integer
Dim linha As Long
Dim TOTAL As Long
linha = 2
Plan2.Cells.ClearContents 'observe que uso o nome de código da folha de planilha 'nao aba'
Plan2.Cells(1, 1) = "CODIGO"
Plan2.Cells(1, 2) = "CRIT"
Plan2.Cells(1, 3) = "PAÍS"
Plan2.Cells(1, 4) = "VALOR"
Plan2.Cells(1, 5) = "QTD."
Plan2.Cells(1, 6) = "CONTRATO"
Plan2.Cells(1, 7) = "TOTAL"
For i = 1 To ?
'---- códigos na planilha. baixe-a no final da página (Registre-se - esta na aprea livre para Registrados.)
Next i
Acesse o exemplo de planilha
End Sub
'observe que aqui, se voce inserir no final row - retorna última usada com linhas em branco
'se inserir rows retorna a útlima linha sem intervalos linhas em branco
Sub localizando_ultima_linha()
--- acesse o exemplo de planilha, baixe no final da página
End Sub
Sub limpar_teste()
Plan2.Cells.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 Saberexcel
Baixe o exemplo de Planilha contendo os procedimentos acima
Excel planilha vba relatorio criteiros loops (79.14 KB)