Ecrire dans Microsoft Excel

Résolu
xpmich Messages postés 62 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 11 mars 2010 - 17 nov. 2005 à 14:56
DGPat Messages postés 53 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 1 août 2006 - 21 nov. 2005 à 13:34
bonjour,
je voudrais savoir si il est possible de remplir un tableau exel grace aux données d'une base de donnée ? quel sont les commandes ? peut on agir sur la commande "imprimer" d'exel (voila le genre de commande)

sous DELPHI 7 !

merci d'avance !
xpmich

6 réponses

DGPat Messages postés 53 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 1 août 2006
21 nov. 2005 à 13:34
Hello,

Il y a déjà plusieurs fois que le sujet a été traité, le mieux c'est de récupérer le code de JMP77 le soft c'est DataConvertor, il est sur ce site, il est très bien fait et il fonctionne très bien, et correspond à ce que tu veux faire.

Bon courage

Ce n'est pas parce qu'on débute que l'on est forcement idiot
DGPat
3
dominique.stock Messages postés 436 Date d'inscription vendredi 7 novembre 2003 Statut Membre Dernière intervention 8 octobre 2008 7
17 nov. 2005 à 15:20
Bonjour,

Oui

Cela dépend de la version d'excel et de ce que tu veux faire.
Si c'est juste écrire des données dans un tableau sans plus de mise en forme que ça, je te conseille pour un maximum de portabilité de créer un fichier ".xls" et de le remplir en utilisant le séparateur de colonne "#9" et de fin de ligne "#13".

Pour l'impression, un shellexecute sur le fichier créé et une commande 'print' devraient suffire.

Bon courage.



Dom
0
stu76 Messages postés 186 Date d'inscription samedi 5 mars 2005 Statut Membre Dernière intervention 17 février 2008 1
17 nov. 2005 à 15:33
Bonjour,

J'ai déjà fait ce genre de manipulation à partir d'une base de données que j'avais créée en paradox, si tu veux plus d'info dit moi simplement quel type de base tu utilises est qu'elles sont tes objectifs. J'ai déjà vu dans autre toppic que des personnes faisait la même manoeuvre avec OPENOFFICE si ca t'interesse. Tu peux éventuellement faire une recherche sur le site dans ce sens, si tu veux éviter les licences microsoft. (Juste à titre d'info ).

Sinon je suis du même avis que dominique.stock.

@+ et bonne prog

Stu76
0
xpmich Messages postés 62 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 11 mars 2010
17 nov. 2005 à 16:12
re
je travaille avec une base de donnée paradox, mais je connais pas trop la manier, tout comme DELPHI et EXEL. je suis curieux de voir l'appli faite par Stu76.
Par rapport au fichier "xls", je connais mais je ne suis pas pour, je voudrais en effet un petit mise en forme qui donne l'image de ma base de donnée.

merci
xmpich
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
stu76 Messages postés 186 Date d'inscription samedi 5 mars 2005 Statut Membre Dernière intervention 17 février 2008 1
17 nov. 2005 à 17:31
No prob xpmich, envoi moi un mail ou je peux t'envoyé le code qui t'intéresse, faut juste me laisser le temps de le retrouver.

@+

Stu76
0
stu76 Messages postés 186 Date d'inscription samedi 5 mars 2005 Statut Membre Dernière intervention 17 février 2008 1
20 nov. 2005 à 10:58
Voici un exemple de source d'exportation de données vers excel, c'est un source que j'avais trouver dans un book et que j'avais modifier pour l'adapter à mon application qui est également en paradox.
Ce source n'est peut-être pas parfait mais toujours est-il qu'il répondait à ma demande de l'époque. Voilà si ca peut aider temps mieux. Sinon si tu cherche une commande encore plus précise ou plus spécifique dit moi quoi et je cherche dans mais autre source si je trouve quelque chose qui se rapproche plus à tes attentes.

Code :

procedure TForm1.Exporter1Click(Sender: TObject);
var
XLApp : Variant;
NbLigne : Integer;
begin
if MessageDlg('CONFIRMEZ EXPORTATION DE VOTRE FICHIER VERS EXCEL ?', mtConfirmation, [mbOK, mbCancel], 0) = mrOk then
begin
try
XLApp := CreateOleObject('Excel.Application');
except
ShowMessage('Démarrage de Microsoft Excel impossible');
Exit;
end;
XLApp.Visible := True;
XLApp.Workbooks.Add;


XLApp.Cells[1,1].Value := 'NOM';
XLApp.Cells[1,2].Value := 'PRENOM';
XLApp.Cells[1,3].Value := 'ADRESSE PERSO';
XLApp.Cells[1,4].Value := 'ADRESSE PROF';
XLApp.Cells[1,5].Value := 'CODE';
XLApp.Cells[1,6].Value := 'VILLE';
XLApp.Cells[1,7].Value := 'TELEPHONE';
XLApp.Cells[1,8].Value := 'FAX';
XLApp.Cells[1,9].Value := 'GSM';
XLApp.Cells[1,10].Value := 'CIVILITE';
XLApp.Cells[1,11].Value := 'EMAIL';
XLApp.Cells[1,12].Value := 'CELIBATAIRE';
XLApp.Cells[1,13].Value := 'PROFESSION';



NbLigne :=2;
with Table1 do
begin
first;
while not(Eof) do
begin
XLApp.Cells[NbLigne,1].Value := FieldByName('NOM').AsString;
XLApp.Cells[NbLigne,2].Value := FieldByName('PRENOM').AsString;
XLApp.Cells[NbLigne,3].Value := FieldByName('ADRESSE PERSO').AsString;
XLApp.Cells[NbLigne,4].Value := FieldByName('ADRESSE PROF').AsString;
XLApp.Cells[NbLigne,5].Value := FieldByName('CODEPOSTAL').AsString;
XLApp.Cells[NbLigne,6].Value := FieldByName('VILLE').AsString;
XLApp.Cells[NbLigne,7].Value := FieldByName('TELEPHONE').AsString;
XLApp.Cells[NbLigne,8].Value := FieldByName('FAX').AsString;
XLApp.Cells[NbLigne,9].Value := FieldByName('GSM').AsString;
XLApp.Cells[NbLigne,10].Value := FieldByName('CIVILITE').AsString;
XLApp.Cells[NbLigne,11].Value := FieldByName('EMAIL').AsString;
XLApp.Cells[NbLigne,12].Value := FieldByName('CELIBATAIRE').AsBoolean;
XLApp.Cells[NbLigne,13].Value := TClient.FieldByName('NOM_PROFESSION').AsString;
inc(NbLigne);
Next;
end;
end;
end;
end;

end;

@+

Stu76
0
Rejoignez-nous