把两个工作表(Excel)保存成同一个文件?

Name 2011-01-07 06:19:58

var
ExcelApp, Range: Variant;
begin
ExcelApp := CreateOleObject('Excel.Application'); // Excel
ExcelApp.Caption := sTitle;
ExcelApp.WorkBooks.Add;
Application.ProcessMessages;
ExcelApp.WorkSheets[1].Activate; // 在Sheet[1]里面添加内容,

Range := ExcelApp.Range[ExcelApp.Cells[1,1],ExcelApp.Cells[1,3]];
Range.select;
Range.Merge;
Range.HorizontalAlignment := CST_H_Left;
//添加内容..........................

//ExcelApp.ActiveWorkBook.SaveAs(FileName); //此处不保存,在后面仍然添加内容,
//ExcelApp.WorkBooks.Close;

ExcelApp.WorkBooks.Add;
Application.ProcessMessages;
ExcelApp.WorkSheets[2].Activate; // 往Sheet[2]里添加内容,
//添加内容..........................

ExcelApp.ActiveWorkBook.SaveAs(FileName); //此处保存,但是却提示保存两次,保存成了两个文件了,
// 如何才能把两个工作表保存在同一个文件中???
ExcelApp.WorkBooks.Close;

end


如上代码所示,
问题如下:
1)、如何把两/多个工作表(即Excel中的Sheet1,Sheet2....)保存在同一个文件中?
2)、如何给每个Sheet命名,即Excel中左下角的Sheet1/Sheet2...改名?
...全文
253 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
亮剑_ 2011-01-07
  • 打赏
  • 举报
回复
1、ExcelApp.WorkBooks.Add 后分别往不同的Sheet里写内容后直接保存就是一个工作表文件
2、Sheet重命名(默认就是Sheet1、Sheet2、...)是 Sheet.Name := '新名称',但Excel97-2003格式的有32字节长度限制,Excel2007以后的新格式此限制有无变化需要查一下
Name 2011-01-07
  • 打赏
  • 举报
回复

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧