Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Exportar um objeto de tabela para o excel em um arquivo .xlsx

Bom dia,

estou com um problema para exportar um objeto de tabela para "xlsx".

criei a macro abaixo que está exportando para a minha máquina, como vou publicar a aplicação no servidor, preciso que qualquer usuário consiga fazer o download do arquivo.

Podem me ajudar?

Sub exportExel

  set ExcelSheetApp  = CreateObject("Excel.Application")

  ExcelSheetApp.Visible = false

  set ExcelWB= ExcelSheetApp.Workbooks.Add

  ExcelWB.Sheets(1).name = "QV-Export"

  set XLSheet = ExcelWB.Worksheets(1)

  set QVData = ActiveDocument.GetSheetObject("TB02")

  set XLSheet = ExcelWB.Worksheets(1)

  QVData.CopyTableToClipboard true

  XLSheet.Paste XLSheet.Range("A1")

  ExcelWB.SaveAs "C:\Users\mayke.amorim\Desktop\temp.xlsx", 51

  ExcelWB.Close

  ExcelSheetApp.Application.Quit

End Sub

1 Solution

Accepted Solutions
mario_sergio_ti
Partner - Specialist
Partner - Specialist

Amigo, no Excel o padrão mais cômodo é com ";" como delimitador, segue;

Store <TABELA> Into ARQUIVO.csv (codepage is 1252, txt, delimiter is ';');
Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti

View solution in original post

18 Replies
Marcio_Campestrini
Specialist
Specialist

Boa tarde

Essa função já existe. Se você clicar com o botão direito do mouse no gráfico vai aparecer a opção "Send To Excel".

Caso a opção não apareça, revise as opção de disponibilidade do documento no QMC.

2017-06-06 13_05_36-QlikView Management Console.png

Márcio Rodrigo Campestrini
Anonymous
Not applicable
Author

Márcio,

já utilizei essa opção, porém por padrão o QV exporta em ".xls" que suporta apenas 65 mil linhas, e quando o arquivo ultrapassa esse numero de linhas ele exporta em ".csv".

Nesse caso preciso que seja em ".xlsx" que suporta mais de 1 milhão de linhas.

Marcio_Campestrini
Specialist
Specialist

Altere o parâmetro RowLimitForCsvInsteadOfXls para o número desejado.

Você acessa ele em Ajuda / Sobre, clicando com o botão direito no logo do Qlikview. Se não estiver selecionado, escolha os parâmetros "integers".

2017-06-06 13_48_50-serv-qviewhml - Conexão de Área de Trabalho Remota.png

Márcio Rodrigo Campestrini
Anonymous
Not applicable
Author

alterei conforme print abaixo, porém ao ultrapassar 65500 mil linhas ele gera uma nova aba no arquivo ".xls".

A macro que eu coloquei na postagem inicial está funcionando, porém o caminho está fixo, queria saber uma forma de deixar esse caminho dinâmico, como se o browser assumisse a tarefa do download.

QV.PNG

Marcio_Campestrini
Specialist
Specialist

Mayke

O Qlikview não exporta para o formato xlsx. Assim, se você precisa de uma única aba com mais de 65500 linhas somente através de macro ou csv.

Se o caso for macro, vou ter que te abandonar. Não utilizo macros então não sei como te ajudar nesse caso.

Márcio Rodrigo Campestrini
mario_sergio_ti
Partner - Specialist
Partner - Specialist

Amigo, por que não pode ser CSV? Arquivo compacto e compatível com a maioria dos editores.

Consultor certificado | Quem compartilha, aprende!
https://www.linkedin.com/in/mariosergioti
Anonymous
Not applicable
Author

Bom, de qualquer forma obrigado Márcio.

Anonymous
Not applicable
Author

Boa tarde Mario,

inicialmente estávamos usando em CSV mesmo, porém o excel começou a abrir o arquivo os dados em uma única coluna, sendo necessário configurar usando Texto Para Colunas, que abre margens para erro de separação/formatação.

como fiz uma pequena pesquisa e percebi que temos a opção de usar macro para gerar o arquivo, pensei em criar um botão para fazer o export, mas me deparei com o problema do caminho para salvar o arquivo.

lincoln_ristow
Partner - Contributor
Partner - Contributor

Mayke,

Eu tive esse problema do excel estar abrindo os dados em somente uma coluna, resolvi isso com a sintaxe abaixo, com um delimitador.

STORE EXPORTAÇÃO into ..\Apontamentos\_Tabelas\OS.csv (txt, delimiter is ';');

Dessa forma o excel abriu corretamente as colunas.

Vlw.