Delphi操作EXCEL
来源:互联网 发布:伦纳德死亡缠绕 知乎 编辑:程序博客网 时间:2024/05/23 02:02
Uses ExcelXP, Vcl.OleServer, Vcl.OleAuto;
//用Delphi组件TExcelApplication的操作方法.
function TFormExcelImport.ActiveExcelFile(const FileName :String): Boolean;
var
i: Integer;
// LCID: Integer;
ExcelApplication1: TExcelApplication;
ExcelWorkbook1: TExcelWorkbook;
ExcelWorksheet1: TExcelWorksheet;
begin
Result := False;
try
ExcelApplication1 := TExcelApplication.Create(Application);
ExcelWorkbook1 := TExcelWorkbook.Create(Application);
ExcelWorksheet1 := TExcelWorksheet.Create(Application);
ExcelApplication1.ConnectKind := ckRunningOrNew;
ExcelApplication1.Connect;
// LCID := GetUserDefaultLCID;
if (ExcelApplication1.Workbooks.Count = 0) then
begin
ExcelApplication1.Visible[0] := False;
ExcelApplication1.Caption := 'HKAClient Loading Microsoft Excel';
end;
// 打开工作簿并关联工作簿变量.
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Open(FileName,
False, True, EmptyParam, EmptyParam, EmptyParam, True, EmptyParam,
EmptyParam, EmptyParam, False, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, 0));
// 关联工作表变量
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.ActiveSheet as _WorkSheet);
ListBoxSheetName.Clear;
for i := 1 to ExcelWorkbook1.Sheets.Count do
begin
ListBoxSheetName.Items.Add((ExcelWorkbook1.Sheets[i] as _WorkSheet).Name);
end;
ExcelWorksheet1.Disconnect;
// ExcelWorkbook1.Disconnect;
ExcelWorkbook1.Close(False, FileName, EmptyParam, 0);
// ExcelApplication1.Workbooks.Close(0); //会关闭所有已经打开的Excel文档.
ExcelApplication1.Disconnect;
if (ExcelApplication1.Workbooks.Count = 0) or
(ExcelApplication1.ConnectKind = ckNewInstance) then
ExcelApplication1.Quit;
Result := True;
finally
ExcelWorksheet1.Free;
ExcelWorkbook1.Free;
ExcelApplication1.Free;
end;
end;
//用ComObj对象.
function TFormExcelImport.OpenExcelFile(const FileName:String): Boolean;
var
ExcelApp: OleVariant;
i: Integer;
begin
Result := False;
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.Caption := 'HKAClient Loading Microsoft Excel';
ExcelApp.Visible := False;
ExcelApp.Workbooks.Open(FileName);
ListBoxSheetName.Clear;
for i := 1 to ExcelApp.Sheets.Count do
begin
ListBoxSheetName.Items.Add(ExcelApp.ActiveWorkbook.Sheets[i].Name);
end;
ExcelApp.Workbooks.Close;
ExcelApp.Quit;
Result := True;
end;
- Delphi操作Excel大全
- delphi操作excel
- delphi操作excel
- Delphi操作Excel大全
- Delphi操作Excel大全
- Delphi操作Excel大全
- Delphi操作Excel大全
- 用delphi操作excel
- DELPHI 操作EXCEL
- delphi操作excel语法
- DELPHI操作EXCEL
- 用DELPHI操作EXCEL
- delphi操作Excel
- Delphi操作Excel
- delphi 操作 EXcel
- Delphi操作Excel命令
- delphi操作Excel
- DELPHI操作excel
- https握手时交互的内容
- 雅虎十四条:网站前端网页优化的14条原则
- P1012 拼数
- Android DeskClock总结(一) 数据库之alarm_templates表
- 利用网络平台资源推广一个活动的经验分享
- Delphi操作EXCEL
- FreeRTOS高级篇4---FreeRTOS任务切换分析
- Web服务器处理HTTP压缩之gzip、deflate压缩
- Win7旗舰版64位系统安装LoadRunner11
- JVM内存管理机制----对《深入理解JAVA虚拟机》第二章的理解(上)
- UITextField不超过20字符
- 解释网站导航选项的3种方法技巧
- Long 数据类型的比较
- 如何通过IIS日志分析网站的隐形信息