Página 1 de 1
Criar .xls através de um .csv e trocar colunas
Enviado: 05 Jan 2017 às 14:01
por Cosmix
Olá a todos sou novo em VBA e precisava criar através de um .csv um ficheiro excel com troca de colunas.
Exemplo:
Ficheiro CSV:
Ficheiro Excel:
nota 1: as linhas tanto podem ser 4 como podem ser 1000.
nota 2: só preciso copiar a partir da linha 2 pois o titulo não interessa
nota 3: o ficheiro de destino (.xls) já existe com a linha 1 preenchida com os titulos
Alguém me pode ajudar?
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 06 Jan 2017 às 11:57
por Cosmix
Por acaso alguém teve de fazer uma situação parecida?
Criar .xls através de um .csv e trocar colunas
Enviado: 06 Jan 2017 às 21:51
por laennder
Poste o arquivo CSV que eu crio a macro pra você.
Criar .xls através de um .csv e trocar colunas
Enviado: 09 Jan 2017 às 08:09
por Cosmix
Segue em anexo
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 10 Jan 2017 às 03:59
por DJunqueira
Vc poderia fazer o q quer com Nova Consulta, q no final das contas é uma forma de montar macros orientada p/ banco de dados.
Após montada a consulta seria apenas uma questão de clicar em Atualizar.
No arquivo q vc enviou havia uma coluna extra (Purpose) q eu mantive.
Aparentemente houve um problema de leitura com os dados da coluna Created, penso q foi pontual.
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 10 Jan 2017 às 14:09
por Cosmix
DJunqueira muito obrigado pela resposta.
Eu quando abro o ficheiro, enviado por si, não consigo ver nada do que foi feito ou criado para gerar este mesmo ficheiro. Pode ajudar?
Contudo como chamo o ficheiro de destino? (Sendo o ficheiro de origem o meu e de destino o seu, por exemplo).
Obrigado
Criar .xls através de um .csv e trocar colunas
Enviado: 10 Jan 2017 às 19:46
por DJunqueira
Para usar Nova Consulta seu Excel deve ser 2010 ou superior, no caso das versões 2010 e 2013 vc tem de instalar o suplemento p/ Nova Consulta / Power Query do link abaixo:
https://www.microsoft.com/pt-BR/downloa ... x?id=39379
Uma vez com o suplemento instalado (no caso do 2010 e 2013, no 2016 já vem pré-instalado) vc clica no botão Mostrar Consultas e lá verá as etapas utilizadas. Selecionando a primeira etapa vc pode redirecionar o diretório onde se encontrará o seu arquivo .csv.
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 12 Jan 2017 às 12:53
por Cosmix
Boa tarde,
Não consegui fazer o Download, contudo consegui gerar através de uma gravação de macro o seguinte código.
Sub Macro2()
'
' Macro2 Macro
'
'
Range("A2:A10").Select
Selection.Copy
Windows("Leitura CSV por Nova Consulta.xlsx").Activate
Range("B2").Select
ActiveSheet.Paste
Windows("vba_test.csv").Activate
Range("B2:B10").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Leitura CSV por Nova Consulta.xlsx").Activate
Range("A2").Select
ActiveSheet.Paste
Windows("vba_test.csv").Activate
Range("C2:C10").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Leitura CSV por Nova Consulta.xlsx").Activate
Range("D2").Select
ActiveSheet.Paste
Windows("vba_test.csv").Activate
Range("D2:D10").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Leitura CSV por Nova Consulta.xlsx").Activate
Range("E2").Select
ActiveSheet.Paste
Windows("vba_test.csv").Activate
Range("E2:E10").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Leitura CSV por Nova Consulta.xlsx").Activate
Range("C2").Select
ActiveSheet.Paste
Windows("vba_test.csv").Activate
Range("F2:F10").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Leitura CSV por Nova Consulta.xlsx").Activate
Range("F2").Select
ActiveSheet.Paste
Windows("vba_test.csv").Activate
End Sub
Que já ajuda mas seria optimo poder abrir o ficheiro de origem e o de destino automaticamente, através do file manager. É possível?
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 23 Jan 2017 às 11:51
por Cosmix
@DJunqueira é possível substituir o ficheiro de origem e destino através de uma chamada por File Manager?
Criar .xls através de um .csv e trocar colunas
Enviado: 23 Jan 2017 às 20:02
por DJunqueira
Olá Cosmix
Qual sua versão do Excel?
Pq não conseguiu instalar o Power Query?
Sua alternativa de código não está nada boa, melhor seria importar o arquivo .csv p/ a planilha, modificar a ordem das colunas e depois apagar a importação.
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 24 Jan 2017 às 07:07
por Cosmix
A minha versão é a 2013 mas não consegui mesmo fazer o download. Não percebo porque não consigo
Re: Criar .xls através de um .csv e trocar colunas
Enviado: 24 Jan 2017 às 07:19
por Cosmix
Já consegui. Obrigado agora vou testar qualquer dúvida posto aqui.
Criar .xls através de um .csv e trocar colunas
Enviado: 24 Jan 2017 às 07:48
por DJunqueira
Ótimo
