起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 139|回复: 3

【结贴】excel合并单元格代码运行总出错**

[复制链接]
发表于 2008-11-27 09:31:14 | 显示全部楼层 |阅读模式
procedure TBD_BDZYXGL_JDBHJZDZZXX.ToolButton1Click(Sender: TObject);
var
lFileName: String;
lcells,range,tUsed, ATarget: DispatchHelper;
count,i,row,col :integer;
begin
// 导出
  fxls := ComObj.CreateOleObject('excel.Application');
  FApp := DispatchHelper.Create(fxls);
  FApp.PropertyPut('Visible', [True]);

  docs := FApp.PropertyGet('Workbooks',  []);

  FDocs := DispatchHelper.Create(docs);
  FDocs.InvokeMethod('ADD', []); //加载一个空的工作薄

  lcells := DispatchHelper.Create(FApp.PropertyGet('cells', [1,1]));
  lcells.PropertyPut ('ColumnWidth',[15]);
  lcells.PropertyPut('value',['屏名称']);

  lcells := DispatchHelper.Create(FApp.PropertyGet('cells', [1,2]));
  lcells.PropertyPut ('ColumnWidth',[20]);
  lcells.PropertyPut('value',['保护装置名称及型号']);

  tUsed := DispatchHelper.Create(ATarget.PropertyGet('Range', ['A1','B1']));
  tUsed.InvokeMethod('Merge',[]);
end;
此段代码是在往A1,B1赋值后在合并这2个单元格,但一运行到  tUsed := DispatchHelper.Create(ATarget.PropertyGet('Range', ['A1','B1']));就出错.帮忙看下
回复

使用道具 举报

 楼主| 发表于 2008-11-27 09:44:19 | 显示全部楼层
有人在帮解决吗?
回复 支持 反对

使用道具 举报

发表于 2008-11-27 09:58:18 | 显示全部楼层
tUsed := DispatchHelper.Create(ATarget.PropertyGet('Range', ['A1','B1']));
你的ATarget是空对象会报告指针错误的。
换成FApp 看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-27 10:11:45 | 显示全部楼层
解决了,结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-27 20:48 , Processed in 0.039863 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表