GARANTIR DESCONTO

Fórum Liberar Excel da Memoria #275081

01/04/2005

0

[b:f7def2169f]Estou montando uma rotina para exportar dados automaticamente para o Excel.

Segue a rotina abaixo

[color=red:f7def2169f]lcid := GetUserDefaultLCID; //pega o usuário logado
Path := ExtractFilePath(Application.ExeName) + ´pedido.xls´;
WkBk := ExcelApplication1.Workbooks.Open(Path , EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, LCID);

ExcelApplication1.Visible[lcid] := true; //torna a aplicação visível
//ExcelApplication1.Visible[lcid] := False; //torna a aplicação visível
ExcelApplication1.DisplayAlerts[lcid] := false; //remove alertas do excel
ExcelWorksheet1.ConnectTo(WkBk.Worksheets[2] as _Worksheet);
ExcelWorksheet1.Activate(LCID); //ativa a planilha conectada
ExcelApplication1.ScreenUpdating[lcid] := true; //torna possível fazer alterações

For vi_ContaLinha := 1 to vi_TotLinha Do
Begin
...... rotina ......
End;

ExcelApplication1.disconnect;
ExcelWorksheet1.SaveAs( ExtractFilePath(Application.ExeName) + EditNameArq.Text + ´.xls´);
ExcelApplication1.Free;[/color:f7def2169f]
Meu problema é o seguinte, quando deixo assim:
ExcelApplication1.Visible[lcid] := False; //torna a aplicação visível

O excel nao libera dos processos do windows, ficando preso e não consigo abrir novamente o excel, mesmo utilizando a rotina ExcelApplication1.Free;

Alguem teria uma ideia?
Obrigado
Beto[/b:f7def2169f]


Splash

Splash

Responder

Posts

02/04/2005

Edilcimar

se você colocou visible = false então a aplicação está ativa e invisível, tente colocá-la visible = true novamente


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar