[Excel] Mover e Renomear Arquivos em Massa com Excel e VBA

Поделиться
HTML-код
  • Опубликовано: 2 дек 2024

Комментарии • 44

  • @taffarelpf
    @taffarelpf 3 года назад +4

    Além do código ficar limpo, legível e comentado, ganha destaque para o desempenho e velocidade na execução do código. Muito bom!

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Show Taffarel, muito obrigado. Obrigado por acompanhar e assinar o canal.

  • @rafaelmarques5282
    @rafaelmarques5282 3 года назад +5

    Muito bom, parabéns! 👊🏻😉
    Uma dica adicional seria extrair via Power Query o "caminho da pasta" via parâmetro de busca (tabela auxiliar de endereço) e assim já listar todos os arquivos desse diretório, etapa "Fonte".
    Se existirem regras pra renomear (exemplo, quando for 'xxxxdoc' mudar 'yyyydoc'), já seriam tratadas no ETL e/ou direto na aba do Excel, repetindo × vezes no dia enquanto houver descarga de conteúdos na origem e abastecendo outros diretórios para equipes/setores consumirem o arquivo final "movido" e "validado".

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Boa ideia, pode ser feito assim também Rafael, ou até com o VBA também consegue fazer isso e ficar tudo junto. Grato por acompanhar e assinar o canal.

  • @rafaekamorim9748
    @rafaekamorim9748 3 года назад +3

    Estava precisando disso! Só ajustar para fazer cópia ao invés de mover.

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад +1

      Excelente Rafaek, tem um artigo de como criar backup com o Excel que faz exatamente isso de automatizar a cópia em massa de arquivos: www.guiadoexcel.com.br/backup-automatico-de-arquivos-com-excel-vba/

  • @AgnaldoPinheiro
    @AgnaldoPinheiro 3 года назад +2

    Excelente Prof. Marcos Rieper. Também uso muito esse código para identificar a última linha de uma tabela (ultimalinhacoluna2 = Cells(Rows.Count, 2).End(xlUp).Row), porém, pode dar erro se houver uma célula não vazia fora da tabela na coluna que é feita a contagem (coluna 2 no exemplo). Uma alternativa que eu uso para identificar todo o range é:
    lRng = range("B8").CurrentRegion.
    Lembrando que este range incluiu os títulos, portanto, o número de linhas no exemplo seria então
    lTotal = lRng.Rows.Count - 1.
    Obrigado por compartilhar.

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад +1

      Sim, isso pode ocorrer, sempre tem que cuidar para ter os dados normalizados no formato de tabela, evitando ter dados que não são referentes aquele tipo de informação na coluna do loop.

  • @eltoncoelho8625
    @eltoncoelho8625 Год назад +1

    Boa tarde esse código é perfeito pro meu projeto muitíssimo obrigado pela dedicação em ensinar..
    Só gostaria de tirar uma dúvida...
    Se por acaso ele não ache o arquivo na pasta eu queria que ó código continuasse movendo o restante dos arquivos e não parasse...
    É possível?

  • @Sounorato
    @Sounorato 2 года назад +1

    Merece muito mais likes, parabéns por compartilhar conhecimento conosco!

  • @ulivanmgm
    @ulivanmgm 3 года назад +3

    Impressionante, nunca imaginei que seria possível

    • @excelno1238
      @excelno1238 3 года назад

      É possível até fazer o Excel falar 🗣, existem diversas funcionalidades nele.

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Valeu Ulivan. Grato por acompanhar e assinar o canal.

  •  3 года назад +1

    melhor aula de vba que já assisti! já me inscrevi! parabéns!

  • @cbrmstudios3314
    @cbrmstudios3314 3 года назад +2

    Excelente, Professor Marcos!!!!

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад +1

      Muito obrigado CBRM. Obrigado por acompanhar e assinar o canal.

  • @CRISBARROSCOACH
    @CRISBARROSCOACH 3 года назад +2

    Excelente! Aula Rica e Rápida! Gratidão demais!

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад +1

      Muito obrigado :). Grato por acompanhar e assinar o canal.

  • @WaldemarCaetano
    @WaldemarCaetano Год назад

    Muito obrigado professor! Me ajudou muito.

  • @TiaguinhoTK
    @TiaguinhoTK Год назад

    Sensacional o processo. Gostaria de saber qual código usaria apenas para criar uma copia do arquivo, por exemplo utilizo um diretório que tenho acesso somente a leitura.

  • @ualisonsouza6171
    @ualisonsouza6171 2 года назад

    Parabéns! Ótimo vídeo, boa didática.
    Sucesso!

  • @ciriloalves897
    @ciriloalves897 2 года назад

    Parabéns excelente trabalho

  • @sergiocarvalho3398
    @sergiocarvalho3398 3 года назад +2

    Como combinado estávamos juntos. Assim se agiliza o trabalho.

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Excelente Sérgio, sempre. Obrigado por acompanhar e assinar o canal.

    • @sergiocarvalho3398
      @sergiocarvalho3398 3 года назад

      @@GuiadoExcelOficial eu que tenho que agradecer seus conteúdos que são compartilhados a todos nós.

  • @raphaelpessanha6297
    @raphaelpessanha6297 Год назад

    Professor, poderia me dizer com qual funcao eu consigo capturar o comprimento de um video (saber a duracao em minutos) ?

  • @maykeluiz3547
    @maykeluiz3547 3 года назад +1

    professor vc disse sobre como fazer a listagem dos arquivos, via macro tbm, porém não achei esse video!!! tem como mandar o link pf, aula sensacional!!

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Sim, neste link: ruclips.net/video/Edz1ykvtO6k/видео.html. Obrigado por assinar e acompanhar o nosso canal.

  • @TIPurilub
    @TIPurilub Год назад

    Muito bom o vídeo, estou tentando adequar a minha necessidade. Porém estou tendo dificuldades.
    Eu tenho uma situação que é a seguinte.
    Rotineiramente, tenho que mover XML e PDF de NFs, para pastas especificas.
    Estes XML e PDF ficam todos em uma única pasta.
    Porém, para organizar, preciso criar pastas, onde o nome destas partas e uma parte do nome do arquivo XML/PDF.
    Estas pastas eu crio de uma forma muito simples. Através no nosso sistema eu baixo uma lista com o nome das pastas (Que é uma parte do nome dos XML/PDF), crio um arquivo de texto com o comando CMD "MD" e salvo como .bat.
    Exemplo:
    MD 170515
    MD 170305
    ...
    E por aí vai, criando mais de 1000 pastas.
    Após criar estas pastas, tenho que pesquisar arquivo por arquivo XML/PDF, de acordo com este número e mover o mesmo para sua respectiva pasta.
    Baseado nesta planilha, eu pensei, como tenho a lista com o nome das pastas, eu precisaria tornar o nome da pasta numa variável e usar está variável para pesquisar os arquivos por parte no nome, na outra pasta onde fica todos XML/PDF e ao encontrar o arquivo, mover para esta pasta em questão.
    E assim seguir no loop até terminar.
    Contudo, não estou conseguindo criar este código.
    Conseguiriam me ajudar?
    Muito obrigado.

  • @luckmarty
    @luckmarty Год назад

    Professor. Uma dúvida. O comando GoTo sair seria realmente necessário? Obrigado.

  • @marioaf
    @marioaf 5 месяцев назад

    Boa tarde professor. Tentei rodar a macro, mas está dando o erro: 424-Objeto é obrigatório.
    Porque acontece esse erro e como resolver ele?
    Obrigado

  • @guilhermebraz3553
    @guilhermebraz3553 Год назад

    Professor, aqui fica dando errp 424 o senhor tem alguam ideia do porque?

  • @cesarmonteiro9097
    @cesarmonteiro9097 2 года назад

    amigo!!! show!!!

  • @leandrosantoscosta9621
    @leandrosantoscosta9621 3 года назад +1

    que show !!!!!!!!!!!!

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Valeu Leandro. Obrigado por acompanhar e assinar o canal.

  • @16polenta
    @16polenta Год назад

    No caso de querer copiar o arquivo como seria ?

  • @akneiro8494
    @akneiro8494 3 года назад +1

    Amigo, tem como aumentar o range do arquivo em excel... eu testei com 200 imagens aqui e está dando erro. ABS

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Sim, só ajustar no código VBA, tem que dar uma olhada alterando o intervalo no range. Grato por assinar e acompanhar o canal.

  • @martello-basedeconhecimento
    @martello-basedeconhecimento Год назад

    Seria possível ao invés de mover, copiar o arquivo? Por exemplo: Preciso copiar um arquivo e colar várias vezes esse mesmo arquivo com um nome diferente.

  • @CleitondaSilvaLeal
    @CleitondaSilvaLeal 3 года назад +1

    agora eu consigo

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Valeu Cleiton, obrigado por estar sempre acompanhando e por ser meu aluno.

  • @JoseGomes-wg7te
    @JoseGomes-wg7te 3 года назад +1

    Cara muito obrigado, porém estou com um trabalho de corno pra fazer kkk.
    São 102 pastas, tenho que copiar 1 arquivo pra todas essas pastas, cada pasta tem o nome de um cliente diferente. Mas o arquivo é unico nao muda. Tem alguma luz pra me dar ?

    • @GuiadoExcelOficial
      @GuiadoExcelOficial  3 года назад

      Sim, dá pra fazer sem problemas, mas aí vai um pouco mais de VBA pra fazer isso: www.guiadoexcel.com.br/criar-pastas-automaticamente-com-vba/