Ir ao conteúdo
  • Cadastre-se

Excel unificar varias planilhas em uma só


Posts recomendados

Pessoal, eu preciso muito de ajuda para juntar as informações de uma aba de várias planilhas para uma unica, considerando que as informações sempre tem que ser coladas abaixo. São bases que eu uso para copiar em uma unica e gerar pagamento para pessoas. Porém eu não sou experiente em macro e não consigo criar. Por mês eu recebo em média 20 planilhas que tenho que copiar a informação da aba Relatorio de equipe (pois na minha planilha existem várias abas que não podem ser excluidadas, essas bases vem preenchidas do nosso time de vendas) para uma unica base. Alguém pode me ajudar? Eu ja estou desesperada.

Link para o comentário
Compartilhar em outros sites

Segue a planilha essa planilha tem muito mais abas é que eu exclui eu preciso copiar as informações da aba Relatorio Equipe de mais de 20 bases que recebo para uma unica planilha. Preciso copiar a informação de :Nome Completo Funcionário Matrícula Valor Status promotor Coordenador. E consolidar em outra base.

   Nome Completo Funcionário Matrícula Valor Status promotor Coordenador

 

Planilha Fundo Fixo MODELO.xlsx

 

 

image.png

adicionado 5 minutos depois
4 minutos atrás, Cristiane Suelen Santos disse:

Segue a planilha essa planilha tem muito mais abas é que eu exclui eu preciso copiar as informações da aba Relatorio Equipe de mais de 20 bases que recebo para uma unica planilha. Preciso copiar a informação de :Nome Completo Funcionário Matrícula Valor Status promotor Coordenador. E consolidar em outra base.

   Nome Completo Funcionário Matrícula Valor Status promotor Coordenador

 

Planilha Fundo Fixo MODELO.xlsx

 

 

image.png

@R0DR1G0_CWB

Link para o comentário
Compartilhar em outros sites

As demais planilhas tem o mesmo layout só muda o nome porque vem de vendedores diferentes, porém a parte interna é identica e a planilha para copiar as informações é simples só precisa conter essas informações que citei que devem ser copiadas e o cabeçalho deve ser copiado apenas uma vez senão eu teria que entrar na base que sera criada e fazer a exclusão manual.

 

@R0DR1G0

Link para o comentário
Compartilhar em outros sites

@R0DR1G0_CWB Eu fiz uma outra aba na base que tenho para"facilitar" na Macro, eu até criei uma macro que puxa os dados desta planilha e de várias, porém eu não consigo configurar a macro para pegar apenas as informações da aba(Planilha1) nova que eu criei. Preciso que pegue apenas dela e tambem gostaria de entender se posso deixa-la oculta e mesmo assim a macro encontrar a aba e puxarf ainformações?

 

segue abaixo a macro que criei e os dois arquivos, o que esta com a macro e o arquivo com a nova aba criada. No teste que eu fiz só funciona se a planilha ficar salva com a aba Planilha 1 aberta no arquivo, porém eu recebo mais de 100 arquivos de outras pessoas e nao e garantido que deixarão esta aba como primeira então não posso arriscar. voce acha que consegue me ajudar?

 

Option Explicit

Private Sub btImporta_Click()

Application.ScreenUpdating = False

'Definição das variáveis
'-----------------------
Dim W               As Worksheet
Dim WNew            As Workbook
Dim ArqParaAbrir    As Variant
Dim a               As Integer
Dim NomeArquivo     As String

'Captura arquivo para tratamento
'-------------------------------

ArqParaAbrir = Application.GetOpenFilename("Arquivo de Retorno (*.*), *.*", Title:="Escolha o arquivo a ser importado", MultiSelect:=True)

If Not IsArray(ArqParaAbrir) Then

    If ArqParaAbrir = "" Or ArqParaAbrir = False Then
        MsgBox "Processo abortado. Não foi selecionado arquivos para processar...", vbOKOnly, "Processo abortado"
        Exit Sub
    End If

End If

Set W = Sheets("Plan1")

W.UsedRange.EntireColumn.Delete
W.Select
  
For a = LBound(ArqParaAbrir) To UBound(ArqParaAbrir)
    
    NomeArquivo = ArqParaAbrir(a)
    
    Application.Workbooks.Open (NomeArquivo)
    Set WNew = ActiveWorkbook
    ActiveSheet.Range("A1").CurrentRegion.Select
    Selection.Copy Destination:=W.Cells(W.Rows.Count, 1).End(xlUp).Offset(1, 0)
    
    Application.DisplayAlerts = False
    
        ActiveWorkbook.Close SaveChanges:=False
    
    Application.DisplayAlerts = True

    W.Cells(W.Rows.Count, 1).End(xlUp).Offset(1, 0).Select
    
Next a

Application.ScreenUpdating = True

MsgBox "Processo concluído", vbOKOnly, "Processo concluído"


End Sub


 

Planilha de onde os dados serão coletados.xlsx

Base_unificaplanilhasmacro.zip

Link para o comentário
Compartilhar em outros sites

@CasaDoHardware Ajudou um pouco sim, porém eu preciso de uma macro que além de unir varias planilha copie apenas uma aba das bases, pois as planilhas que recebo tem mais de 40 abas. É possivel fazer isso?  Eu nao tenho muita experiencia tentei alterar a macro mas da erro.

 

acredito que a alteração que tenho que fazer é aqui.

 Sub Unir_Abas()

Dim Sig As Byte, Eliminar As Boolean
Dim UltFila As String
    For Sig = 2 To Worksheets.Count
    UltFila = Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
        Worksheets(Sig).UsedRange.Copy _
        Worksheets(1).Range("A")
    Next
    For Sig = 2 To Worksheets.Count
        Worksheets(2).Delete
    Next
  
     Rows("1:1").Select
    Selection.Delete Shift:=xlUp
    '*********************************

End Sub


@Basole

Link para o comentário
Compartilhar em outros sites

@CasaDoHardware sim o nome da aba sempre será a mesma eu nomeie BASE MACRO, a macro funciona para copiar todas as abas da planilha mas eu preciso configurar apenas para uma. Uma outra dúvida caso eu deixe essa aba oculta a macro também puxa as informações dela? Estou com muita dificuldade devido não ter conhecido de como configurar a macro. Se poder me ajudar ficarei muito grata.

Link para o comentário
Compartilhar em outros sites

Todas as suas pastas da qual você quer pegar os dados tem uma guia com o mesmo nome?

Se sim que nome é esse!

Esta guia pode estar oculta na planilha de origem?

Qual o caminho onde esta os dados de origem?

Abri seus dois arquivos mas nao consegui identificar a origem e o destino dos dados.

Seu exemplo precisa ser semelhante a sua planilha original.
 

Link para o comentário
Compartilhar em outros sites

@CasaDoHardware

Essa planilha está alterada. Eu mudei o modelo dela. Posso anexar amanhã caso você ache melhor. Mas o modelo e o mesmo eu apenas criei uma aba chamada BASE MACRO que pega os dados dos funcionários da aba Relatório equipe. Eu costumo salvar essas planilhas no meu desktop mesmo. Eu fiz o teste onde eu busco as planilhas em qualquer pasta do meu PC isso funcionou bem.

 

Como essa planilha vai para mais de 130 pessoas eu gostaria de deixar a guia BASE MACRO oculta não sei se é possível. Essa é a guia da qual quero extrair as informações com a macro.

 

Agora já não estou mais no trabalho e está salva lá no meu notebook. Posso te enviar amanhã? Lembrando que recebo mais de 100 planilhas todas no mesmo modelo. Nem a ordem e nem as informações serão alteradas.

Link para o comentário
Compartilhar em outros sites

Me ajude a lhe ajudar.

 

Nenhuma das tres pastas que você postou não tem nenhuma guia com o nome base macro.

 

quando eu lhe pergunto o nome da guia preciso saber o nome da guia de origem e o com uma COPIA EXTAMENTE IGUAL a que você usa no dia a dia.

E a planilha que recebe os dados tb TEM QUE SER EXATAMENTE IGUAL a que você usa no dia a dia.


Disponibilize um modelo exatamente igual o que você usa.

Dados confidenciais devem ser protegidos.

Link para o comentário
Compartilhar em outros sites

@CasaDoHardware Então como combinado segue a base que uso nas antigas não tinha a aba BASE MACRO.

 

Nesta tem a BASE MACRO, tem todas as abas originais que vem. Essa base nunca é alterada sempre será a mesma.

 

O que eu preciso são duas coisas:

1_Que o excel junte as 100 planilhas iguais a essa que recebo todo mes em uma unica guia;

2_A guia que deve ser salva das 100 planilhas que recebo é a guia BASE MACRO.

 

Como eu disse eu costumo receber as planilhas por email e salvo em uma pasta do meu desktop acho que a opcao de pegar qualquer arquivo em excel e eu poder escolher o arquivo e o local e melhor, pois eu recebo sempre a mesma base mas as vezes as pessoas salvam pelo nome do coordenador. Porém a guia BASE MACRO não muda.

 

Planilha MODELO ANTIGO ATUALIZADO_1.xlsx

Link para o comentário
Compartilhar em outros sites

Essa é a ultima planilha que vou usar. Por favpor, considerar as informações que eu preciso estão na aba BASE MACRO.

Eu fiz alterações na base conforme expliquei a primeira que eu coloquei logo no inicio do forum já não é mais valida.

 

Eu preciso que as informações venham conforme o modelo BASE MACRO acho que ficou mais fácil assim, porque da outra forma não estava conseguindo ajuda para a criação da Macro.

Vou anexar o novamente o modelo que preciso de ajuda, as informações devem ser extraidas da coluna A até Coluna E (BASE MACRO), são varias planilhas iguais a essa que recebo por mês, primeira macro para compilar todas informações em uma só com o critério de extrair os dados apenas da aba BASE MACRO.

 

Não sei se posso colocar aqui meu email pessoal,porém segue [email protected] caso queira me enviar email.

 

Muito obrigada pela ajuda 

 

Planilha MODELO ANTIGO ATUALIZADO_1.xlsx

Link para o comentário
Compartilhar em outros sites

a base nao esta rodando e esta dando este erro.

não abra a caixa para eu poder selecionar os arquivos que precisam ser importados.

 

image.thumb.png.6216ef35f4da0ac1b4f10ec673047995.pngEu preciso altera esta linha?

 

Pasta = "C:\Users\" & Environ("UserName") & "\Desktop\Dados"

 

Eu salvei no meu desktop a Pasta Dados conforme pediu.

Acho que esta apresentando erro nesta parte 

 

Set SHC = Sheets("Consolidado")

Set FSO = CreateObject("Scripting.FileSystemObject")

 

Link para o comentário
Compartilhar em outros sites

Qual a linha de codigo que esta gerando problema

 

É importante que a pasta Dados tenha esta nomenclatura

 

Dados é diferente de dados ou qualquer outra variação.

O codigo aqui esta funcionando corretamente.

 

Altere esta linha 

 

"C:\Users\" & Environ("UserName") & "\Desktop\Dados"

 

Para o caminho da pasta Dados que você criou no Desktop

Link para o comentário
Compartilhar em outros sites

Ola a pasta foi salva conforme orientado: Dados.

Eu alterei as informações conforme solicitado para: Entendi que é o meu usario que coloco correto? Segue Pasta = "C:\Users\" & Environ("QWU2017") & "\Desktop\Dados" tem mais alguma coisa que devo alterar aqui?

Quando eu clico em F8 para ir rodando a macro e ver se esta tudo certo agora me aparece um erro nesta parte: If InStr(1, Planilha, ".xlsx") = 0 Then GoTo PRÓXIMO - não sei o motivo pois não alterei essa parte.

 

Vou enviar para você aqui o print da tela do meu desktop onde está correto eu acredito que o problema nao esta na pasta porque a Macro não chega nem a roda a ponto de eu abrir a caixa e selecionar os arquivos. Consegue me ajudar?

Eu vi que para você rodou direitinho até porque aparece aqui para salvo e eu consigo ver. Só não sei por qual motivo esta dando esse tipo de erro. Segui todas as orientações.image.thumb.png.9dbebda2f7036db72f92739b0d834792.png

adicionado 23 minutos depois

Acho que entendi agora eu estava fazendo errado, todas as planilhas a serem copiadas incluindo a planilha que contem a macro devem estar salvas na Pasta Dados correto?

 

Como eu faço para que os dados sejam apagados antes de eu importar os novos dados? Tipo a base da macro apaga tudo que esta na planilha e importa as bases salvas na pasta dados.

Link para o comentário
Compartilhar em outros sites

Vamos la!

 

A Parte onde você alterou nao deveria mexer la deve ficar username mesmo.

 

Este username é o usuario logado no seu pc.

Ou aquele que se registra o windows.

Aqui:

 

Set SHC = Sheets("Consolidado")

 

Se você olhar no arquivo de exemplo você vai ver que tem uma guia com o nome Consolidado. Se na sua planilha original o nome for diferente troque consolidado pelo nome da guia que vai receber os dados

Qto a apagar os dados 

Antes do primeiro Do While acrescente esta linha

 

sheets("Consolidado").range("A2:E" & rows.count).clearcontents 'Ajuste para o nome da sua planilha

A pasta de trabalho que vai receber os dados pode estar em qualquer lugar do seu pc.

As pastas de trabalho que vão ser copiadas estas sim todas elas devem estar na pasta Dados.

 

Se estas alterações nao funcionarem poste (sem dados) a sua pasta de trabalho que vai receber os dados ORIGINAL.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...