تصدير قواعد البيانات لملف الإكسل
#9
السلام عليكم
اشكرك اخي ben . ja علي الرد مرى اخرى
هذا هو الكود    في form اريد ان اعرف اين الخلل
كود :
unit Unit9; interface uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, unit Unit9; interface uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, Mask, DB, DBTables, Grids, DBGrids, DBCtrls, Buttons,  ComCtrls, ExtCtrls, OleServer, ExcelXP, Menus, ImgList, acAlphaImageList,  sBitBtn, sEdit, sSpeedButton, sGroupBox; type  TForm9 = class(TForm)    DBGrid1: TDBGrid;    DateTimePicker1: TDateTimePicker;    DateTimePicker2: TDateTimePicker;    Query1: TQuery;    ExcelApplication1: TExcelApplication;    OpenDialog1: TOpenDialog;    Label1: TLabel;    Label2: TLabel;    MainMenu1: TMainMenu;    Menu1: TMenuItem;    Fermer1: TMenuItem;    Table1: TTable;    Table2: TTable;    DataSource1: TDataSource;    DataSource2: TDataSource;    Table2nbjour: TFloatField;    Table2nbbon: TFloatField;    Table2prgz: TFloatField;    Table2tarif: TFloatField;    Table2prixord: TFloatField;    Query1nbjour: TFloatField;    Query1prixord: TFloatField;    SpeedButton1: TSpeedButton;    Label3: TLabel;    SpeedButton2: TSpeedButton;    Label4: TLabel;    Label5: TLabel;    SpeedButton3: TSpeedButton;    SpeedButton5: TSpeedButton;    Label7: TLabel;    PopupMenu1: TPopupMenu;    AjouterMatrucule1: TMenuItem;    popimgs: TsAlphaImageList;    Table1Nord: TIntegerField;    Table1dateor: TDateTimeField;    Table1mat: TStringField;    Table1prix: TIntegerField;    Table1charg: TStringField;    Table1priklm: TIntegerField;    Table1Nom: TStringField;    Table1typc: TStringField;    Table2Nord: TIntegerField;    Table2desti: TStringField;    Table2klm: TIntegerField;    Table2Datd: TDateTimeField;    Table2mat: TStringField;    Table2Prklm: TStringField;    Query1Nord: TIntegerField;    Query1desti: TStringField;    Query1klm: TIntegerField;    Query1Datd: TDateTimeField;    Query1mat: TStringField;    Query1Non: TStringField;    Query1Prklm: TStringField;    Query1chgz: TIntegerField;    Query1nbbon: TIntegerField;    Query1Marque: TStringField;    Query1Ncat: TStringField;    Query1prgz: TFloatField;    sBitBtn1: TsBitBtn;    Query1Ecare: TFloatField;    sSpeedButton1: TsSpeedButton;    sEdit1: TsEdit;    Label6: TLabel;    sBitBtn2: TsBitBtn;    Query1charg: TStringField;    sRadioGroup1: TsRadioGroup;    sEdit2: TsEdit;    sEdit3: TsEdit;    sEdit4: TsEdit;    procedure DateTimePicker2Change(Sender: TObject);    procedure FormActivate(Sender: TObject);    procedure FormClose(Sender: TObject; var Action: TCloseAction);    procedure DBGrid1TitleClick(Column: TColumn);    procedure Fermer1Click(Sender: TObject);    procedure Table2CalcFields(DataSet: TDataSet);    procedure SpeedButton1Click(Sender: TObject);    procedure SpeedButton2Click(Sender: TObject);    procedure SpeedButton3Click(Sender: TObject);    procedure Query1CalcFields(DataSet: TDataSet);    procedure SpeedButton5Click(Sender: TObject);    procedure AjouterMatrucule1Click(Sender: TObject);    procedure sBitBtn1Click(Sender: TObject);    procedure sSpeedButton1Click(Sender: TObject);    procedure sBitBtn2Click(Sender: TObject);  private    { Déclarations privées }        { Déclarations publiques }  end; var  Form9: TForm9;  MyFile: String;  a:array [1..26]of string[1]=('A','B','C','D','E','F','G','H','I','J','K','L',                       'M','N','O','P','Q','R','S','T','u','V','W','X','Y','Z'); implementation uses Unit7, Unit3, Unit26; {$R *.dfm} procedure TForm9.sBitBtn2Click(Sender: TObject); var Tab: _workbook;    Feuil: _worksheet;    i,j:Integer;    S:shortstring; begin   try    ExcelApplication1.Connect;    ExcelApplication1.Visible[0]:=False;    Tab:=ExcelApplication1.Workbooks.Add(xlWBATWorksheet,0);    //ExcelApplication1.Visible[0]:=true;    feuil:=Tab.Worksheets[1] as _worksheet;          For i:=0 to DBGrid1.Columns.Count-1 do          begin            with Feuil.Range[A[i+1]+'1',A[i+1]+'1'] do            begin              Value[xlRangeValueDefault]:= DBGrid1.Columns.Items[i].Title.Caption;              Font.Name:='times new roman';              Font.Size:=10;              Font.Bold:=True;             With Interior do             begin                  ColorIndex := 15;                  Pattern := xlSolid;                  PatternColorIndex := xlAutomatic;             End;             With Borders do             begin                  LineStyle := xlContinuous;                  Weight := xlThin;                  ColorIndex := xlAutomatic;             End;            end;          end;          j:=2;          Query1.First;          While not Query1.Eof do          begin             For i:= 1 To  DBGrid1.Columns.Count Do             begin                s := A[i]+inttostr(j);               if DBGrid1.Fields[i-1].DataType  = ftCurrency then                begin                   Feuil.Range[s,s].NumberFormat  := '#,##0.00';                   Feuil.Range[s,s].Value[xlRangeValueDefault] := DBGrid1.Fields[i-1].AsCurrency;                end                else                    if DBGrid1.Fields[i-1].DataType  in [ftDate,ftDateTime] then                    begin                       Feuil.Range[s,s].NumberFormat  := 'dd/mm/yyyy';                       Feuil.Range[s,s].Value[xlRangeValueDefault] := DBGrid1.Fields[i-1].AsDateTime;                    end                    else                      begin                         Feuil.Range[s,s].NumberFormat  := 'Text';                         Feuil.Range[s,s].Value[xlRangeValueDefault] := '''' + DBGrid1.Fields[i-1].AsString;                      end ;             end;             Query1.Next;             j:=j+1;          end;   finally        SUIMsgDlg(' Exportation des données Terminée . ','MyApp',mtInformation,[mbOK],suiMessageDialog1.UIStyle);        ExcelApplication1.Visible[0]:=true;        ExcelApplication1.Cells.Select;        ExcelApplication1.Columns.AutoFit;        ExcelApplication1.Range['A1','A1'].Select;        ExcelApplication1.Disconnect;   end;
end.
الرد


الردود في هذا الموضوع
RE: تصدير قواعد البيانات لملف الإكسل - بواسطة imad19_soft - 14-05-2018, 11:47 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم