"Bugg" apparu dans le process d'exportation vers Excel [Résolu]

Messages postés
83
Date d'inscription
mardi 7 juin 2011
Statut
Membre
Dernière intervention
9 novembre 2013
- - Dernière réponse : divin1975
Messages postés
83
Date d'inscription
mardi 7 juin 2011
Statut
Membre
Dernière intervention
9 novembre 2013
- 11 mars 2013 à 09:59
Bonjour!

Je suis buté à une situation d'exportation. Je voulais bien exporter un fichier vers Excel. Mais ça plante sur cette ligne:
planilha:= CreateoleObject('c:\depenses.xls');


var linha, coluna : integer;
planilha : variant;
valorcampo : string;
begin

planilha:= CreateoleObject('c:\depenses.xls');
planilha.WorkBooks.add(1);
planilha.caption := 'Exportando dados do dbGrid para o Excel';
planilha.visible := true;

ADOTable1.First;
for linha := 0 to ADOTable1.RecordCount - 1 do
begin
for coluna := 1 to ADOTable1.FieldCount do
begin
valorcampo := ADOTable1.Fields[coluna - 1].AsString;
planilha.cells[linha + 2,coluna] := valorCampo;
end;
ADOTable1.Next;
end;
for coluna := 1 to ADOTable1.FieldCount do
begin
valorcampo := ADOTable1.Fields[coluna - 1].DisplayLabel;
planilha.cells[1,coluna] := valorcampo;
end;
planilha.columns.Autofit;
end;
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
3
Merci
salut!!!
essayer

implementation
    uses comobj;
{$R *.dfm}
//...


var linha, coluna : integer;
planilha ,planworkbook: variant;
begin
try
planilha:= CreateOleObject('Excel.Application');
planworkbook := planilha.Workbooks.Add;
planworkbook.Worksheets.Item['Feuil1'].Activate;
planilha.caption := 'Exportando dados do dbGrid para o Excel';
planilha.visible := false;
ADOTable1.First;
//ADOTable1.DisableControls;
for linha := 0 to ADOTable1.RecordCount - 1 do
begin
for coluna := 1 to ADOTable1.FieldCount do
begin
planilha.cells[linha + 2,coluna].formula :=  ADOTable1.Fields[coluna - 1].AsString;//valorCampo;
end;
ADOTable1.Next;
end;
for coluna := 1 to ADOTable1.FieldCount do
begin
planilha.cells[1,coluna] := ADOTable1.Fields[coluna - 1].DisplayLabel;//valorcampo;
end;
planilha.columns.Autofit;
planilha.ActiveWorkBook.SaveAs('c:\depenses.xls');
//ADOTable1.EnableControls;
planilha.visible := true;
except
planilha:=Unassigned;
// HandleException;
end;

@+

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_walidlam
Messages postés
693
Date d'inscription
jeudi 17 avril 2008
Statut
Membre
Dernière intervention
19 février 2019
10
0
Merci
Dubois77
site persosalut
dans res Var du début, tu déclares planhila comme variant, alors que tu l'utilises déja avant
c'est le local qui est pris en compte, donc pas bon.
Commenter la réponse de dubois77
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
0
Merci
salut!!!
planilha:= CreateoleObject('Excel.Application');


ala fin
OleApplication.ActiveWorkBook.SaveAs('c:\depenses.xls'); 

regarder ici...

@+
Commenter la réponse de cs_walidlam
Messages postés
83
Date d'inscription
mardi 7 juin 2011
Statut
Membre
Dernière intervention
9 novembre 2013
0
Merci
ça marche toujours pas.
Personne n'a un truc de pareille qui fonctionne déjà.

Merci,
divin1975
Commenter la réponse de divin1975
Messages postés
83
Date d'inscription
mardi 7 juin 2011
Statut
Membre
Dernière intervention
9 novembre 2013
0
Merci
@walidlam
C'est extraordinaire! ça marche en parfaite santé.

Merci,
divin1975
Commenter la réponse de divin1975