Consulta Excel
Peguei o codigo abaixo na seção Dicas e Macetes do Clube, sobre como incluir no Excel dados de uma consulta.
procedure TForm1.GerarExcel(Consulta: TQuery);
var
coluna, linha: integer;
excel: variant;
valor: string;
begin
try
excel:=CreateOleObject(´Excel.Application´);
excel.Workbooks.add(1);
except Application.MessageBox (´Versão do Ms-Excel´+
´Incompatível´,´Erro´,MB_OK+MB_ICONEXCLAMATION);
end;
Consulta.First;
try
for linha:=0 to Consulta.RecordCount-1 do
begin
for coluna:=1 to Consulta.FieldCount do
begin
valor:= Consulta.Fields[coluna-1].AsString; excel.cells [linha+2,coluna]:=valor;
end;
Consulta.Next;
end;
for coluna:=1 to Consulta.FieldCount do
begin
valor:= Consulta.Fields[coluna-1].DisplayLabel;
excel.cells[1,coluna]:=valor;
end;
excel.columns.AutoFit;
excel.visible:=true;
except
Application.MessageBox (´Aconteceu um erro desconhecido durante a conversão´+
´da tabela para o Ms-Excel´,´Erro´,MB_OK+MB_ICONEXCLAMATION);
end;
end;
O Código funciona blz. Mas a minha necessidade é de abrir um arquivo do Excel, e não criar um novo, pois tenho um modelo para inserir os dados.
Até ai tudo bem, troquei a linha
excel.Workbooks.add(1);
por:
excel.Workbooks.add(´C:\Arquivo.xls´);
Mas no final do código necessito Salvar Como.. esse arquivo, pois ele é um modelo.
Gostaria de saber se alguém tem essa linha de código pois tentei tudo quanto foi jeito mas não consegui.
excel.Workbooks.SaveCopyAs(´D:\MeuArquivo.xls´):
excel.Workbooks.SaveAs(´D:\MeuArquivo.xls´):
Agradeço qualquer ajuda
procedure TForm1.GerarExcel(Consulta: TQuery);
var
coluna, linha: integer;
excel: variant;
valor: string;
begin
try
excel:=CreateOleObject(´Excel.Application´);
excel.Workbooks.add(1);
except Application.MessageBox (´Versão do Ms-Excel´+
´Incompatível´,´Erro´,MB_OK+MB_ICONEXCLAMATION);
end;
Consulta.First;
try
for linha:=0 to Consulta.RecordCount-1 do
begin
for coluna:=1 to Consulta.FieldCount do
begin
valor:= Consulta.Fields[coluna-1].AsString; excel.cells [linha+2,coluna]:=valor;
end;
Consulta.Next;
end;
for coluna:=1 to Consulta.FieldCount do
begin
valor:= Consulta.Fields[coluna-1].DisplayLabel;
excel.cells[1,coluna]:=valor;
end;
excel.columns.AutoFit;
excel.visible:=true;
except
Application.MessageBox (´Aconteceu um erro desconhecido durante a conversão´+
´da tabela para o Ms-Excel´,´Erro´,MB_OK+MB_ICONEXCLAMATION);
end;
end;
O Código funciona blz. Mas a minha necessidade é de abrir um arquivo do Excel, e não criar um novo, pois tenho um modelo para inserir os dados.
Até ai tudo bem, troquei a linha
excel.Workbooks.add(1);
por:
excel.Workbooks.add(´C:\Arquivo.xls´);
Mas no final do código necessito Salvar Como.. esse arquivo, pois ele é um modelo.
Gostaria de saber se alguém tem essa linha de código pois tentei tudo quanto foi jeito mas não consegui.
excel.Workbooks.SaveCopyAs(´D:\MeuArquivo.xls´):
excel.Workbooks.SaveAs(´D:\MeuArquivo.xls´):
Agradeço qualquer ajuda
Luciano Pimenta®
Curtidas 0