DBGird中数据导入Excel例子!
来源:互联网 发布:物业app软件 编辑:程序博客网 时间:2024/06/15 12:09
部分代码参考CSDN网站上的帖子!
procedure TForm1.BitBtn1Click(Sender: TObject);
var
ExcelWorksheet: TExcelWorksheet;
ExcelApplication: TExcelApplication;
ExcelWorkbook: TExcelWorkbook;
i, row, column: integer;
x1,x2,y1,y2 : integer;
begin
x1 := 1;
y1 := 2;
column := 1;
ExcelApplication := TExcelApplication.Create(Application);
ExcelWorksheet := TExcelWorksheet.Create(Application);
ExcelWorkbook := TExcelWorkbook.Create(Application);
Try
ExcelApplication.Connect;
Except
ShowMessage('Error!');
End;
ExcelApplication.Visible[0] := True;
ExcelApplication.Caption := 'Excel Application';
ExcelApplication.Workbooks.Add(Null, 0);
ExcelWorkbook.ConnectTo(ExcelApplication.Workbooks[1]);
ExcelWorksheet.ConnectTo(ExcelWorkbook.Worksheets[1] as _Worksheet);
row := 3;
ExcelWorksheet.Cells.Item[1, 1] := 'XXXXX'; //标题设置
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[1,1],
ExcelWorksheet.Cells.Item[1,2]].Merge(0);
ExcelWorksheet.Cells.Item[1,1].HorizontalAlignment:=xlCenter;
for i:=1 to DBGrid1.Columns.Count do
begin
ExcelWorksheet.Cells.Item[2, i] := DBGrid1.Columns.Items[i-1].FieldName;
end;
While Not (DBGrid1.DataSource.DataSet.Eof) do
begin
column := 1;
for i := 1 to DBGrid1.Columns.Count do
begin
ExcelWorksheet.Cells.Item[row, column] := DBGrid1.DataSource.DataSet.fields[i - 1].AsString;
column := column + 1;
end;
DBGrid1.DataSource.DataSet.Next;
row := row + 1;
end;
y2 := row-1;
x2 := column-1;
//数据内容设置
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Font.Name := '宋体';
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Font.Size := 10;
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1-1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Borders.Color := clBlack;
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1-1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Borders.LineStyle := xlContinuous;
ExcelWorksheet.Cells.Item[1,1].Font.Name := '宋体'; //标题字体设置
ExcelWorksheet.Cells.Item[1,1].Font.Size := 12;
ExcelWorksheet.Cells.Item[1,1].Font.Bold := True;
ExcelApplication.Disconnect;
ExcelApplication.Free;
ExcelWorksheet.Free;
ExcelWorkbook.Free;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
ExcelWorksheet: TExcelWorksheet;
ExcelApplication: TExcelApplication;
ExcelWorkbook: TExcelWorkbook;
i, row, column: integer;
x1,x2,y1,y2 : integer;
begin
x1 := 1;
y1 := 2;
column := 1;
ExcelApplication := TExcelApplication.Create(Application);
ExcelWorksheet := TExcelWorksheet.Create(Application);
ExcelWorkbook := TExcelWorkbook.Create(Application);
Try
ExcelApplication.Connect;
Except
ShowMessage('Error!');
End;
ExcelApplication.Visible[0] := True;
ExcelApplication.Caption := 'Excel Application';
ExcelApplication.Workbooks.Add(Null, 0);
ExcelWorkbook.ConnectTo(ExcelApplication.Workbooks[1]);
ExcelWorksheet.ConnectTo(ExcelWorkbook.Worksheets[1] as _Worksheet);
row := 3;
ExcelWorksheet.Cells.Item[1, 1] := 'XXXXX'; //标题设置
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[1,1],
ExcelWorksheet.Cells.Item[1,2]].Merge(0);
ExcelWorksheet.Cells.Item[1,1].HorizontalAlignment:=xlCenter;
for i:=1 to DBGrid1.Columns.Count do
begin
ExcelWorksheet.Cells.Item[2, i] := DBGrid1.Columns.Items[i-1].FieldName;
end;
While Not (DBGrid1.DataSource.DataSet.Eof) do
begin
column := 1;
for i := 1 to DBGrid1.Columns.Count do
begin
ExcelWorksheet.Cells.Item[row, column] := DBGrid1.DataSource.DataSet.fields[i - 1].AsString;
column := column + 1;
end;
DBGrid1.DataSource.DataSet.Next;
row := row + 1;
end;
y2 := row-1;
x2 := column-1;
//数据内容设置
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Font.Name := '宋体';
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Font.Size := 10;
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1-1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Borders.Color := clBlack;
ExcelWorksheet.Range[ExcelWorksheet.Cells.Item[y1-1,x1],
ExcelWorksheet.Cells.Item[y2,x2]].Borders.LineStyle := xlContinuous;
ExcelWorksheet.Cells.Item[1,1].Font.Name := '宋体'; //标题字体设置
ExcelWorksheet.Cells.Item[1,1].Font.Size := 12;
ExcelWorksheet.Cells.Item[1,1].Font.Bold := True;
ExcelApplication.Disconnect;
ExcelApplication.Free;
ExcelWorksheet.Free;
ExcelWorkbook.Free;
end;
- DBGird中数据导入Excel例子!
- dbgird中导出到excel函数
- POI实现数据从Excel导入到数据库中例子
- ADOquery导入EXCEL表数据例子
- DBGird导出Excel(delphi)
- Excel数据导入DataGrid中
- sql数据导入excel中。
- Excel中数据导入Oracle
- Java中Excel导入数据
- EXCEL数据导入Sqlite中
- excel中数据导入sqlserver
- java数据导入Excel中
- C#中Excel数据导入
- 小例子:java利用poi读取excel中数据并导入数据库
- 将Excel中的数据导入数据中
- excel 导入 完整例子
- springmvc导入Excel例子
- pb 如何从excel中导入数据
- java在linux下不能处理图形的解决办法
- WINDOW自带工具.
- 谈颜色空间【zz】
- JAVA程序员面试32问
- 循环操作时,DataReader老是出错,没有关闭--在线等……
- DBGird中数据导入Excel例子!
- 正式开始闭关了!
- 大学生挑战就业
- Linux内核的Softirq机制(三)
- [ASP学习] —— 1、简单的留言薄
- 在C#中多语种的实现
- Java中new DerivedClass()时背后发生的事情
- 2004十大启迪故事
- 实现转贴功能的store procedure