FACIL | LOOP FOR NEXT no VBA no Microsoft Excel | Estruturas de Repetição

  Рет қаралды 25,427

Excel Online Brasil

Excel Online Brasil

4 жыл бұрын

Mas afinal, o que é um Loop? Para que serve? Nesta aula vou te ensinar de modo fácil como dominar este recurso que pode agregar muito valor a automação de seus relatórios.
O VBA (Visual Basic for Applications) é famoso por alavancar a carreira de muitos profissionais no mercado de trabalho, porém, para obter uma produtividade acima da média é fundamental que você saiba trabalhar com esse recurso Loop "For Next".
O Loop "For Next" é um tipo de Loop, afinal existem variados tipos de Loops no VBA.
Por exemplo, há o "Do While", "For Next", "While Wend", "Do Until", entre outros.
Cada um possui características próprias e nesta aula eu vou lhe explicar em detalhes como utilizar o loop "For Next"
Bons estudos;)
"Afinal, até seus problemas precisam evoluir!!"
VARIÁVEIS no Microsoft Excel VBA:
• Como Trabalhar com VAR...
Curso Microsoft Excel - Seja Destaque no Mercado de Trabalho :
excelonlinebrasil.com/curso_m...
Inscreva-se em nosso canal no KZfaq: excelonlinebrasil.com/excel_p...
✅ E-book GRATUITO pra você:
Tabelas Dinamicas - 7 Dicas Simples E Valiosas Para Ganhar Produtividade
👉 Baixe agora e descubra!
excelonlinebrasil.com/ebook-d...
#loopar #loop #loopfornext
========================
✔ CONHEÇA NOSSO BLOG:
excelonlinebrasil.com/
✔ CONHEÇA NOSSOS CURSOS:
excelonlinebrasil.com/curso_m...
✔ NOSSAS REDES SOCIAIS:
Facebook : / excelonlinebrasil
KZfaq : excelonlinebrasil.com/excel_p...
Contato comercial:
✉ marcusrodello@excelonlinebrasil.com
=================
Seja bem-vindo(a) ao canal Excel Online Brasil!
Com vídeos semanais, o canal é apresentado por Marcus Rodello e tem como objetivo compartilhar de uma forma simples e direta um rico conteúdo para profissionais :
- querendo enriquecer seu "vocabulário" em Microsoft Excel
- buscando recolocação no Mercado de Trabalho
- almejando acelerar sua jornada rumo a uma promoção de cargo
Queremos inspirar essas pessoas para que consigam produzir mais, aprimorem seu desempenho, alavanquem suas carreiras e multipliquem este conhecimento levando este conteúdo adiante.
O canal também faz parte do Programa de Experts em Produtos do Google (support.google.com/), contribuindo para o crescimento da plataforma e dos criadores de conteúdo.
=================
NÃO CLIQUE AQUI: excelonlinebrasil.com/youtube...

Пікірлер: 57
@Fransuwel
@Fransuwel 3 жыл бұрын
Muito bom! Ficou muito claro.
@sergiocardosozacarias2028
@sergiocardosozacarias2028 3 жыл бұрын
Show de aula, uma didática sensacional. Parabéns 👏
@NorBeSil
@NorBeSil Жыл бұрын
EXCELENTE didática. NOTA 10 ! 😀👍
@mcjoy2
@mcjoy2 Жыл бұрын
Sua didática é excelente! Muito obrigado!
@janiobarbosa8749
@janiobarbosa8749 2 жыл бұрын
Quem sabe agora vai conseguir apreender. Aula 10
@FernandodeCarvalhoNavarro
@FernandodeCarvalhoNavarro 4 жыл бұрын
Graaaaande professor! Ótima aula. Abração!
@ExcelOnlineBrasil
@ExcelOnlineBrasil 4 жыл бұрын
Salve Mestre! Como sempre uma honra sua presença aqui. Espero que esteja tudo bem por aí e com muita saúde. Um abraço 👍😉
@Leandro_Montanholi
@Leandro_Montanholi 2 жыл бұрын
Show, gostei da sua didática, me inscrevi. Muito obrigado.
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Feliz em ajudar Leandro. Um abraço.😉
@marciocancherini4684
@marciocancherini4684 3 жыл бұрын
MARCO gostei muito já havia assistido com Júlio Battisti entre outros e não havia ficado tão claro pra mim. Obrigado
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Que bom que ficou claro esta aula para você Marcio, vamos sempre tentando melhorar a didática. Obrigado, um abs.👍
@MCAES01
@MCAES01 3 жыл бұрын
muito top... bastante simples e funcional. Abre um leque para muitas outras coisas
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Que bom que gostou MCAES01.👍 Realmente, uma vez tendo compreendido bem a funcionalidade e aplicações dos Loops, seus códigos ganham asas. Obrigado. Abraço
@marcelocampos6014
@marcelocampos6014 2 жыл бұрын
Professor tenho dois laço de repetição uma faz pesquisa por nome, e o outro ele cópia o nome na base de dados e cola em outra planilha , gostaria de juntar as duas fórmulas numa só para fazer pesquisa de todos os nome , ex ele cola o primeiro nome e faz a pesquisa naquele nome ,depois e busca o segundo nome e faz a pesquisa .....até fazer com todos
@rodrigosilveira3905
@rodrigosilveira3905 4 ай бұрын
Tenho uma dúvida, preciso fazer algo parecido mas para um preenchimento automático com VBA. Quero que ele preencha uma coluna com a contagem em sequência de linhas. Ex.: 1.1.1 depois 1.1.2, 1.1.3 e assim por diante até a última linha. Qual seria a variável correta para isso?
@thiaguin6823
@thiaguin6823 3 жыл бұрын
😱
@LuisCarlos-lf2fh
@LuisCarlos-lf2fh Жыл бұрын
Vai rolar Black friday no curso,tô interessado.
@niltonreboucas1872
@niltonreboucas1872 3 жыл бұрын
Tenho uma planilha de dados e queria organizar, tem código duplicado e não duplicado,queria pular linha em branco após um código diferente automaticamente
@felipesignorellireis7839
@felipesignorellireis7839 2 жыл бұрын
poderia explicar qual a diferenca do loop for next ou for each eu nunca sei quando devo usar ou qual devo usar.
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Olá Felipe. Essa sua pergunta é um excelente tema para uma aula, vou incluir ela ainda para 2021. Mas vamos lá, basicamente, todos os tipos de Loops tem a capacidade de fazer as mesmas coisas. Porém, com alguns tipos é mais fácil trabalhar com objetos diretamente, outros com dados numéricos, outros com seleções sequenciais. Mas por fim isso acaba se tornando uma preferencia pessoal do programador com o Loop, a forma de escrever seu código, com o tempo você vai se habituar a trabalhar mais com um tipo do que outro. Um abraço😉👍
@felipesignorellireis7839
@felipesignorellireis7839 2 жыл бұрын
@@ExcelOnlineBrasil ah entendi. É porque eu to iniciando e paguei um Curso e o professor usa as vezes um, outras vezes outro. acho ahe quando ele usa um loop pensando em analisar célula a célula da current workbook, ele usa o each para percorrer uma a uma. mas no geral eu sempre travo nessa parte.
@TheWAGNER3994
@TheWAGNER3994 3 жыл бұрын
boa tarde... tenho uma dificuldade.preciso criar uma lista sem repeticoes e todas as possibilidades a partir do conteudo de um grupo fixo dentro de 10 linhas e 15 colunas . voce pode me ajudar ? nao tenho conhecimento em vba...
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Olá WO.SANTANNA SANT"ANNA . Bom para começar, preciso dizer que apreciei muito a foto do seu perfil, acompanho Fórmula 1 de perto. Para criar lista sem repetições, pode tanto utilizar o recurso "Remover Duplicatas" do Excel que se encontra na Guia Dados > Grupo Ferramentas de Dados. Ou Também através de uma das novas funções de matriz Dinâmica do Excel, a Função ÚNICO. Por favor, veja se da certo assim. Se não funcionar, por favor, envia o arquivo no meu email que tento entender melhor. marcusrodello@excelonlinebrasil.com Abs. 👍
@henriquemurakami7996
@henriquemurakami7996 3 жыл бұрын
Olá, estou desenvolvendo uma planilha onde preciso correr x planilhas e executar um comando Se. Uma dúvida, eu consigo comparar a função For com uma varíavel Boolean? Por que gostaria de inserir n checkbox e gostaria que ele corra as planilhas em TRUE. Por exemplo: Checkbox 1, 2 e 3. Checkbox 1 e 3 = True Checkbox 2 = 2 False Estou tentando For a = 2 to Sheets.Count If Sheets(a) = Userform1.Checkbox(a) then 'Verifica se a planilha na checkbox é true ou false .... Else Neste caso eu gostaria que a função faça o comando nas planilhas 1 e 3 e não na 2. Porém está dando erro. Teria como fazer isso?
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Olá Henrique, tudo bom? Certamente há como fazer, mas precisaria utilizar IF com AND, pois caso atenda a condição do checkbox 1 AND do checkbox 3, aí ele executa. A propósito, são quanto checkbox que está utilizando? Abs😉
@henriquemurakami7996
@henriquemurakami7996 3 жыл бұрын
@@ExcelOnlineBrasil Estou usando 24 Checkbox
@adilsonaffonso394
@adilsonaffonso394 4 ай бұрын
Assistindo os seus vídeos eu fiz isso amigo: Sub exemplo1() Dim valor As Double Dim linha As Double linha = 2 valor = Cells(2, 8).Value For i = 1 To 500 valor = Cells(linha, 8).Value Cells(linha, 8) = valor linha = linha + 1 Next Range("h:h").Select Selection.NumberFormat = "#,##0.00" End Sub Básico demais né? Eu sei, mas aprendi
@ExcelOnlineBrasil
@ExcelOnlineBrasil 4 ай бұрын
Excelente Adilson. Parabéns pelo aprendizado. Se eu puder fazer apenas uma sugestão, ao invés de trabalhar com a variável "linha" utilize diretamente a variável do loop "i". Neste caso para fazer os 500 laços ficaria : For i=2 to 501 Mas por favor, qual é o intuito do loop neste caso uma vez que a variavel valor coleta um valor na coluna H e posteriormente substitui ele por ele mesmo na célula? Um abraço
@adilsonaffonso394
@adilsonaffonso394 4 ай бұрын
@@ExcelOnlineBrasil amigo, essa planilha que contém esses dados é oriunda de um sistema paralelo que ao fazer download dos dados desse sistema, tem pelo menos umas 8 a 10 colunas em que os números são entendidos como texto e por esse motivo tenho a necessidade de transformá-los em números antes de prosseguir com os próximos trabalhos que é a inserção de fórmulas.
@jeffersonrhoads
@jeffersonrhoads 7 ай бұрын
Quero usar o for each em todas as pastas de trabalho em um mesmo diretório. Como faço para fazer o excel entender isso? Só preciso de pelo menos essa parte do código que referencie o local onde estão os arquicos excel. Agradeço dese já pela ajuda.
@ExcelOnlineBrasil
@ExcelOnlineBrasil 7 ай бұрын
Olá @jeffersonrhoads. Publicamos uma aula sobre isso nessa semana, segue o link : kzfaq.infoYQ5SC1bmQQo Um abraço😉
@jeffersonrhoads
@jeffersonrhoads 7 ай бұрын
@@ExcelOnlineBrasil agradeço pela atenção. Meu objetivo é criar uma macro para colar uma formatação de uma pasta de trabalho (nesse caso é a pasta onde está a macro), em várias outras pastas de trabalho do Excel. Eu usei a estrutura For Each e o procedimento está sendo feito, porém só está sendo feito em um dos arquivos do diretório. Quero saber como fazer o mesmo nos demais, fui informado que teria que colocar um contador. Lembrando que a quantidade de arquivos a serem formatados no diretório vai variar. O que falta agora é colocar esse contador.
@zzz-ks9lt
@zzz-ks9lt 2 жыл бұрын
é possivel fazer em um userform??? nao estou consegindo
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Sim, é possível. Porém precisará trabalhar com os objetos que criou no userform, ao invés que utilizar o "Cells" que utilizei na aula, pois nesse caso meu universo era uma planilha e não um userform. Um abs.😉
@negociosonline40
@negociosonline40 3 жыл бұрын
Minha dúvida é, como carregar uma link aguardar o carregamento e assim que a página estiver carregada continua o loop.
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Uma sugestão seria você utilizar o código Application.Wait para que a execução dê um tempo (a ser definido) para o carregamento da página. Uma outra possibilidade que me ocorre caso você esteja por exemplo carregando dados de uma página para uma planilha do excel, é deixar o loop verificando as células onde a informação será carregada e quando as células não estiverem mais vazias é o indicativo de que os dados foram carregados. Espero haver lhe ajudado. Um abraço😉
@negociosonline40
@negociosonline40 3 жыл бұрын
@@ExcelOnlineBrasil ideias muito boas. Deixa eu te explicar como a planilha vai funcionar: A planilha precisa copiar a paridade de um ativo em uma tabela, ela copia a paridade, depois cola em uma célula, esta célula com este dado é usado para montar um link dinâmico da API, logo a seguir, preciso atualizar os dados de consulta através deste link dinâmico, após os dados carregados a planilha analisa o status de algumas células, se aparece "OK" significa que as informações precisam ser colocadas em uma tabela específica e assim o loop continua. A parte que estou tendo problemas é fazer o loop carregar junto com a consulta, pois a consulta não carregar devido o loop não deixar carregar a consulta.
@geiciara8009
@geiciara8009 2 жыл бұрын
Eu consigo utilizar essa forma com varios produtos em diversas linhas, com filtro? Ou tem outra forma de fazer esse mesmo jeito porém incluindo mais linhas?
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Consegue sim Geiciara. No caso da tabela estar filtrada, o loop vai passar pelas linhas que estiverem ocultas tambem. Abs😉
@geiciara8009
@geiciara8009 2 жыл бұрын
@@ExcelOnlineBrasil Muito obrigada!
@dennydidier
@dennydidier Жыл бұрын
Só não consegui fazer 11 to 1, fiz igualzinho como o descrito
@isaque.d3528
@isaque.d3528 3 жыл бұрын
Bom dia! Marcos pode me ajuda com um problema ? to criando uma planilha to quase acabando ela. queria colocar o nome janeiro no formulário e o excel leva o dados do formulário para planilha com nome janeiro.assim me ajudaria a manda produtos para planilhas diferentes
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Olá Isaque, tudo bom? Por favor, para eu entender melhor, como funcionaria esse mecânica? Por exemplo, o nome "Janeiro" seria inserido onde? Em uma combobox? Em uma TextoBox? Direto na Planilha? E uma vez inserido o mes em questão, para exibir os registros do mes de Janeiro na Planilha de nome "Janeiro", você faria isso via Filtro Avançado? Copiar /Colar? Query? Um abraço.👍
@isaque.d3528
@isaque.d3528 3 жыл бұрын
@@ExcelOnlineBrasil Olá tudo bem sim,E com o senho ? E que eu trabalho com 8 tipos de material diferentes,queria fazer um formulário meio que diferente. queria pode coloca o nome do material no registro do formulário junto com dados, como são 8 tipos eu separei em 8 abas na planilha com o nome diferente. minha intenção e coloca o nome do material e os dados no registro e levar para a tabela com o nome do material. assim sempre que eu coloca outro nome diferente no registro, os dados serem levado para aba com o nome do material que esta no registro.
@eliasrodriguescunha9306
@eliasrodriguescunha9306 2 жыл бұрын
Teria como pular da linha 19 para a 59 e de 59 para 25 ?
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Certamente Elias. Você pode fazer isto utilizando a cláusula IF no VBA, ensino ela nesta aula : kzfaq.info/get/bejne/nrmlac-Ty9_DlKM.html Ficaria algo assim, dentro do LOOP : If lin = 19Then lin = 59 ElseIf lin = 60 Then lin = 25 End If Um abraço😉
@Elaine.antunes
@Elaine.antunes 2 жыл бұрын
Como uso pra rodar até achar uma célula vazia?
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Olá Elaine. Segue abaixo: Com FOR NEXT : For lin = 5 To 30 If Cells(lin, 6) = Empty Then Cells(lin, 6).Select Exit For End If Next Com FOR EACH : For Each cel In Range("f5:f30") If cel = Empty Then cel.Select Exit For End If Next Um abs😉
@flavia8782
@flavia8782 2 жыл бұрын
@@ExcelOnlineBrasil caaaaraaaa!! Deus te abençoe!!! Salvou meu projeto com essa dica!! Só faltava isso e agora deu certinho! Muito obrigada!!
@alexroch4
@alexroch4 2 жыл бұрын
Olá, obrigado pelo conteúdo. Sabe um jeito de executar somente após esse comando for executado, for possível executar o próximo comando? Tenho uma planilha "Data" que acessa o banco de dados e extrai as informações, na outra aba fica a "Pivot" que formata as informações e a aba fica "Gráfico". Sempre que executo clico no botão pra fazer o refresh na planilha "Data" a consulta leva um tempo aleatório Sintaxe resumida do Botão de Refresh: Sheets ("Data").Select Range ("Data[[#Headers],[Coluna1]]").Select Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False Queria saber se tem alguma forma de colocar essa macro pra executar de minuto em minuto após ser pressionada e toda vez que a consulta for executada e o resultado for retornado ele ir pra planilha "Gráfico" A aba "Pivot" que possuo, já atualiza automáticamente qd tem algum dado novo na "Data".
@ExcelOnlineBrasil
@ExcelOnlineBrasil 2 жыл бұрын
Olá grande Alex. Em geral no VBA eu não aconselho utilizar o "select" pois costuma causar mais problemas do que soluções, mas pode utiliza-lo que ao final da macro ja ative a planilha gráfico, o "activate" tambem pode ajudar com isso. Quanto a execução de minuto a minuto, você precisaria trabalhar com a método ONTIME, mas isso pode interferir com a execução de outras macros e também causar alguma instabilidade em seu arquivo, é preciso utiliza-lo com cautela ok. Um abraço!😉
@niltonreboucas1872
@niltonreboucas1872 3 жыл бұрын
Não tenho computador mas vejo as pessoas mexendo no trabalho e sou curioso.fico vendo vídeo mas não sei aplicar no trabalho
@ExcelOnlineBrasil
@ExcelOnlineBrasil 3 жыл бұрын
Nilton, creio que poderia começar com gravação de Macros, ela consegue automatizar qualquer atividade de rotina que você precise desempenhar, poderia fazer alguns testes no trabalho mesmo. Sempre com o devido backup de arquivos.😉 Aula - Como Gravar Macros : kzfaq.info/get/bejne/m6qVgNRl1L--mmQ.html Um abraço
✅MUITO FÁCIL! Userform VBA do Microsoft Excel, faz TODA Diferença.
16:51
✅Qual Melhor LOOP no VBA? LOOP FOR EACH ou LOOP FOR NEXT?
17:21
Excel Online Brasil
Рет қаралды 7 М.
A clash of kindness and indifference #shorts
00:17
Fabiosa Best Lifehacks
Рет қаралды 111 МЛН
One moment can change your life ✨🔄
00:32
A4
Рет қаралды 33 МЛН
마시멜로우로 체감되는 요즘 물가
00:20
진영민yeongmin
Рет қаралды 32 МЛН
VBA para Iniciantes - Propriedades de Objetos e Métodos
18:23
Hashtag Treinamentos
Рет қаралды 8 М.
Como Fazer Loop VBA no Excel - While VBA
26:32
Guia do Excel
Рет қаралды 7 М.
Como Trabalhar com VARIÁVEIS no Microsoft Excel VBA | Aprenda PASSO A PASSO
38:57
✅O VBA Está Ultrapassado?
26:07
Excel Online Brasil
Рет қаралды 6 М.
For Each VBA - Utilizando Estrutura de Repetição no VBA
28:16
Hashtag Treinamentos
Рет қаралды 15 М.
Posicionar CONTROLES no Userform de Modo DINÂMICO
24:45
Excel Online Brasil
Рет қаралды 9 М.
15 Macros que você deveria conhecer no Excel
46:13
Guia do Excel
Рет қаралды 78 М.
A clash of kindness and indifference #shorts
00:17
Fabiosa Best Lifehacks
Рет қаралды 111 МЛН