delphi生成excel表的一個問題

sirliner 2003-08-19 04:43:08
因為excel中默認只有三個工作表,要如何新增一個工作表.我用
wksheet4:=wkbook.Sheets.Add(wksheet2,wksheet3,1,xlWorksheet,lcid) as _worksheet;
總是出錯.
還有如何設置某個單元格和某列的寬度.
以前用vb很好實現,可是在delphi中真的不知該如何實現.又找不到幫助文檔.
...全文
19 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
internetcsdn 2003-08-23
  • 打赏
  • 举报
回复
var ExcelApp: olevariant;

begin//1
ExcelApp := CreateOleObject( 'Excel.Application' );
ExcelApp.Visible := True;
ExcelApp.WorkBooks.Add;

ExcelApp.ActiveSheet.Columns[1].ColumnWidth :=4;
end;//1

在DELPHI6下通过
sirliner 2003-08-22
  • 打赏
  • 举报
回复
新增一个工作表可以用:
wksheet4:=wkbook.Sheets.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam,lcid) as _worksheet;
只是加到活动工作表之前,加到其他位置就不知用什么参数了.
设置列宽可以用;
wksheet.Range[wksheet.Cells.Item[4,13],wksheet.Cells.Item[n-1,13]].ColumnWidth :=18;

没有在vb中直接调用VBA 的方便,参数也更灵活.

不知哪位知道在delphi中应该如何设置参数.
sirliner 2003-08-22
  • 打赏
  • 举报
回复
我也看过资料说可以那样设宽度,
可是Columns[1]总是出错.
internetcsdn 2003-08-22
  • 打赏
  • 举报
回复
设置宽度:
设第一列为4:
ExcelApp.ActiveSheet.Columns[1].ColumnWidth :=4;
MMisLady 2003-08-22
  • 打赏
  • 举报
回复
改变字段字体等可如下
Sheet.Range[Sheet.Cells[1,1],Sheet.Cells[1,1]].Font.Name:='宋体' ;
Sheet.Range[Sheet.Cells[1,1],Sheet.Cells[1,1]].Font.Size:=16 ;
Sheet.Range[Sheet.Cells[1,1],Sheet.Cells[1,1]].Font.Bold:=True ;
Sheet.Range[Sheet.Cells[1,1],Sheet.Cells[1,ColCount]].MergeCells :=True;
Sheet.Range[Sheet.Cells[1,1],Sheet.Cells[1,ColCount]].HorizontalAlignment :=xlCenter;
Sheet.Range[Sheet.Cells[2,1],Sheet.Cells[2,ColCount]].Font.Name:='宋体' ;
Sheet.Range[Sheet.Cells[2,1],Sheet.Cells[2,ColCount]].Font.Size:=11 ;
Sheet.Range[Sheet.Cells[2,1],Sheet.Cells[AdoQry.RecordCount+2 ,ColCount]].Font.Bold:=True ;
Sheet.Range[Sheet.Cells[3,1],Sheet.Cells[AdoQry.RecordCount+2,ColCount]].Font.Name:='宋体' ;
Sheet.Range[Sheet.Cells[3,1],Sheet.Cells[AdoQry.RecordCount+2,ColCount]].Font.Size:=9 ;
Sheet.Range[Sheet.Cells[3,1],Sheet.Cells[AdoQry.RecordCount+2,ColCount]].Font.Bold:=False ;
Sheet.Columns.AutoFit ;
ufocyf 2003-08-21
  • 打赏
  • 举报
回复
请说出来 共享!
waysoft 2003-08-20
  • 打赏
  • 举报
回复
以前我用过,很简单的,但具体的忘了。

类似的问题,先记录宏,再仔细看看,就解决了。
sirliner 2003-08-20
  • 打赏
  • 举报
回复
没有人回复,还好我自己解决了.可能方法不是很好,将就了.
internetcsdn 2003-08-20
  • 打赏
  • 举报
回复
mark

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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