261 - Excel VBA - Distribuição de valores em colunas

261 - Excel VBA - Distribuição de valores em colunas Olá seja bem-vindo a mais uma aula do meu canal de vídeos no YouTube na aula de hoje vamos falar sobre VBA Sim ainda gravo aulas de VBA essa incrível linguagem de automação para o Excel essa.

261 - Excel VBA - Distribuição de valores em colunas

Mesma aula vou fazer uma adaptação e vou gravar também em Office script para que você possa ter as duas formas diferentes de fazer a distribuição de registros utilizando uma planilha de excel vou.

Começar essa aula um pouco diferente vou demonstrar o que eu vou fazer para que você possa entender corretamente o código por isso antes de começarmos já deixe o seu like compartilhe esse vídeo.

E deixe um comentário para ver o que você achou do resultado final observe a planilha eu recebi uma dúvida e que veio por um comentário de um vídeo agora recentemente no meu YouTube e eu gostei.

Eu gostei da pergunta e resolvi gravar uma aula por incrível que pareça Eu Já gravei muitas aulas na playlist de de VBA Essa é a aula de número 261 e algumas das aulas falam de.

Distribuição de registros seja na mesma planilha seja em outra planilha seja em outra pasta de trabalho e essa pergunta foi como distribuir separando os nossos registros por tipo em colunas.

Específicas por exemplo você está vendo aqui uma lista de solicitantes eu vou classificá-las em ordem crescente e isso é um requisito essencial pro processo funcionar se você precisa distribuir.

Registros em colunas e quer agrupar pelas informações que são iguais você precisa classificar os seus dados então por exemplo eu teria que colocar aqui o solicitante ou melhor Vamos colocar aqui.

Compras e depois colocar compras logo abaixo sendo que compras cricaré vai ser a minha informação que eu vou definir como principal trocou o solicitante automaticamente ele vai para a próxima.

Coluna nessa próxima coluna ele vai considerar esse item ou esse solicitante como a base vamos reduzir um pouquinho aqui o zoom só para facilitar a explicação nós vamos pegar todos os.

Valores daquele solicitante específico e colar transpondo os dados depois eu vou fazer a mesma coisa vou pegar aquele próximo registro porque mudou ó Na verdade são três do Norte capixaba esse.

Item também precisaria estar aqui embaixo e fazendo isso automaticamente para distribuir todos os registros que estão na coluna A e B em colunas específicas dentro aqui da nossa.

Veja Mais Aqui:

    $ads={1}

    Planilha o a macro que nós vamos

    Construir vai ser esta aqui ao clicar sobre o botão executar Observe processo foi concluído com sucesso e ele fez O processo todo manual então Conforme você.

    Pode perceber independente do número de registros que cada um tenha ele fez a distribuição desses valores Em lista eu vou retirar a quebra automática de linhas daqui apenas para que você possa.

    Verificar melhor o resultado aqui nas nossas colunas você vai ver que ele separou cada uma das colunas inclusive quando há muitos registros em linhas né específicas fazendo com que essas.

    Informações fossem agrupadas pelo solicitante o que nós vamos fazer é justamente isso com o nosso código essa nossa pasta de trabalho você vai poder criar uma pasta de trabalho com qualquer.

    Estrutura eu não vou fornecer esta aqui pois ela foi fornecida pela pessoa que me enviou a dúvida nós vamos começar adicionando um segundo botão e esse botão vai Executar a minha.

    Ação nas propriedades Vou Chamar esse botão de BT executar e a caption dele vai ser executar pronto como você pode perceber temos dois botões esse aqui é o meu.

    Código original que eu vou trazer para baixo e esse é o código que nós vamos desenvolver para desenvolver o código eu preciso estar no modo Design na guia desenvolvedor e agora vou dar dois.

    Cliques no botão executar uma janela vai ser aberta para que possamos fazer aí a colocação do nosso código eu acabei de apagar o código anterior para que possamos desenvolver no decorrer do.

    Curso O importante aqui entendermos o processo antes de começarmos a fazer a distribuição e esse ponto eu recomendo que você sempre pare e analise o seu código ou a sua estrutura de dados antes.

    De começar a fazer qualquer item ou

    Qualquer desenvolvimento em VBA basicamente eu vou ter que colocar o meu cursor na célula A2 e transferir este valor para uma linha que vai ser.

    Dada como a minha linha de título e na sequência nós temos que percorrer quantos itens que nós temos para aquele valor e preencher para baixo nós vamos ter que ter ter uma estrutura de.

    Controle para controlar a linha atual de onde estou para buscar a coluna do que é a coluna de informação do local nós vamos ter também que buscar uma outra variável para controlar a linha do.

    Destino e também controlar a coluna do destino pois trocou o nome do solicitante que que eu tenho que fazer colocar esse novo solicitante em uma coluna específica então por exemplo isto.

    Aqui tem que ir para uma coluna específica e depois todos os dados dele abaixo essa informação Então tem que ser feita por todas as linhas e Conforme você pode perceber nós temos.

    11844 linhas quantos grupos que nós temos aqui só mesmo se nós fizéssemos uma contagem dos registros distintos vamos lá clicando duas vezes no botão executar.

    Nós vamos definir as nossas variáveis antes de começar a definição das variáveis eu vou usar a instrução application screenupdating iG false para desligar a tela.

    E lá na parte inferior já vou digitar true para atualizar a tela Eu sempre faço isso para evitar que eu esqueça do meu código e depois acabe tendo problemas outra coisa que nós vamos.

    Fazer vai ser se detectarmos um erro no processo eu vou ativar o tratamento de erros nessa macro ou error go to error error é o meu ponto de saída quando você tiver um ponto de saída por erro o ideal.

    É que o usuário saiba o que está acontecendo Então o meu ponto error ele vai dar uma mensagem pro usuário message Box vou colocar que houve um erro no processamento.

    Verifique na sequência eu vou buscar um ponto de saída do meu processo um Exit Point o Exit Point é minha o meu ponto de saída do código só que é um ponto de saída que vai fazer as ações que eu.

    Preciso para que o nosso código não dê erro por exemplo ativar a tela e dar um refresh com o do events também vamos aproveitar o Exit Point para dar uma setw eliminar da.

    Nossa da nossa memória variável w e também usar o comando Exit sub se o processo executar sem intercorrências todo o meu código vai ser executado até o ponto do exit sub Então esse erro não.

    Vai ser utilizado agora se nós tivermos uma ação que gere qualquer erro ele vai pular para o ponto do processo importante on error go to zero faz com que o seu código de tratamento de erros.

    Ele seja desativado senão você corre o risco de outras planilhas também ao dar um erro na sua macro procur ele vai procurar sempre o ponto de saída que nós definimos chamado de error feito o.

    Tratamento de erro e aliás se você não conhece tratamentos de erros no VBA eu tenho na minha playlist aulas específicas sobre esse assunto nós vamos fazer agora a definição das variáveis.

    Que nós vamos utilizar no noso código aqui é aspas simples eu sempre confundo como tô trocando de Python para VBA direto acabo me confundindo e a pouquinhos a gente vai se acostumando.

    Din w eu vou definir essa variável como do tipo worksheet para manipular a minha planilha a variável útima Cell ticel vai ser do tipo Range para manipular a minha última.

    Célula com dados e já que eu vou criar uma variável de objeto nós vamos também matar essa variável de objeto aqui no Exit Point último Cell igual a Nothing continuando Precisamos de uma.

    Variável para controlar a linha de onde nós vamos executar na coluna A a busca dos grupos dos solicitantes ela vai ser do tipo long pois podemos ter mais do que 32.000 linhas aí para analisar.

    Definindo o tipo long eu posso trabalhar com mais de 1 milhão de linhas sem problemas dinm LN destino é a nossa variável também do tipo long que vai fazer a escrita no destino da linha se.

    Forem 10 registros para um solicitante essa variável vai ser incrementada a cada linha que nós copiarmos os dados dinm Call vai ser a minha coluna do tipo integer a coluna Onde estão os dados e.

    Din Call destino vai ser a minha variável do tipo integer que vai controlar a coluna de onde eu vou fazer a gravação dos nossos dados vamos começar então inicializando.

    As nossas variáveis inicializar as variáveis importante todo o processo que você vai fazer no VBA que você entenda o que você está fazendo antes de começar a.

    Programar você será mais efetivo com isso setw igual a planilha um só que atenção planilha um não é o nome da minha planilha que está lá no ambiente do Excel esse nome aqui o usuário pode.

    Trocar a qualquer momento por isso eu vou utilizar esse nome planilha um que vem do projeto é o nome da propriedade da minha planilha da minha worksheet no VBA tanto que eu vou mudar esse nome eu.

    Vou ativar o painel de propriedades e ao invés de planilha um na propriedade name eu vou alterar o nome dela para plan under dados e eu posso aproveitar agora e usar.

    Esse nome VBA aqui no meu código o usuário pode trocar o nome à vontade da planilha que o meu código não será afetado set Última c ou seja nós vamos definir agora a nossa última variável.

    Wcs nós vamos capturar o conjunto todo de células do VBA da nossa planilha usando WC para que ele possa contar 48.5 76 linhas como referência nós vamos.

    AVISO LEGAL: Toda a responsabilidade do conteúdo deste vídeo transcrito é do produtor do canal.
    CLique no Link do Vídeo: https://www.youtube.com/watch?v=BltF_iI80Ms
Wesdigital

Postar um comentário

Postagem Anterior Próxima Postagem