Bonjour,
Jer souhaiterai savoir comment faire pour enregistrer les données d'un TStringGrid ou TDBStringGrid dans un document Excel qui sera créé spécialement pour enregistrer les résultats de la grille
Merci de votre aide
Bonjour,
Jer souhaiterai savoir comment faire pour enregistrer les données d'un TStringGrid ou TDBStringGrid dans un document Excel qui sera créé spécialement pour enregistrer les résultats de la grille
Merci de votre aide
Rend toi déjà sur la FAQ à cet endroit
Cordialement
Pensez à utiliser les tags dans le titre.
Avant de poser une question reportez-vous à la FAQ Delphi
Respectez les règles du forum.
regarde dans la faq il y a toutes une section sur comment gérer excel apres tu fai un petit algo pour remplir excel comme tu souhaite du moment que tu as les données a saisir apres c'est assez simple
http://delphi.developpez.com/faq/?page=exceldelphi
Sans avoir besoin d'excel installé sur la machine:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 procedure XlsWriteCellLabel(XlsStream: TStream; const ACol, ARow: Word; const AValue: string); var L: Word; const {$J+} CXlsLabel: array[0..5] of Word = ($204, 0, 0, 0, 0, 0); {$J-} begin L := Length(AValue); CXlsLabel[1] := 8 + L; CXlsLabel[2] := ARow; CXlsLabel[3] := ACol; CXlsLabel[5] := L; XlsStream.WriteBuffer(CXlsLabel, SizeOf(CXlsLabel)); XlsStream.WriteBuffer(Pointer(AValue)^, L); end; function SaveAsExcelFile(AGrid: TStringGrid; AFileName: string): Boolean; const {$J+} CXlsBof: array[0..5] of Word = ($809, 8, 00, $10, 0, 0); {$J-} CXlsEof: array[0..1] of Word = ($0A, 00); var FStream: TFileStream; I, J: Integer; begin FStream := TFileStream.Create(PChar(AFileName), fmCreate or fmOpenWrite); try CXlsBof[4] := 0; FStream.WriteBuffer(CXlsBof, SizeOf(CXlsBof)); for i := 0 to AGrid.ColCount - 1 do for j := 0 to AGrid.RowCount - 1 do XlsWriteCellLabel(FStream, I, J, AGrid.cells[i, j]); FStream.WriteBuffer(CXlsEof, SizeOf(CXlsEof)); Result := True; finally FStream.Free; end; end;
Delphi 7/XE2/XE3
C#
Oracle 9i à 12c
SQL Server 2008 à 2022
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager