采用OleVariant方式操作Excel的Range,提示"找不到成员"

kingyo 2007-09-14 06:22:17
代码很简单:
var
Excel: OleVariant;
Sheet: OleVariant;
Range : OleVariant;
begin
Excel := CreateOleObject('Excel.Application');
Excel.Visible := True;
Excel.Workbooks.Add;
Sheet := Excel.Sheets[1];
Sheet.Range('A1') := '1111111'; //这里OK
Range := Sheet.Range('A1'); //运行到这里提示"找不到成员",不知什么原因??
Range := '222222';
end;
...全文
266 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingyo 2007-09-15
  • 打赏
  • 举报
回复
非常感谢kunlun_tian,确实如你所说.主要是VBA用多了,一直以为是用()的.哈哈
kunlun_tian 2007-09-14
  • 打赏
  • 举报
回复
Range对象是个集合对象,对它使用索引时需要使用“[]”,而不是“()”,而且对其引用后的赋值,需要使用 “.value” 属性

修改为:
......
Sheet := Excel.Sheets[1];
Sheet.Range['A1'] := '1111111 ';
Range := Sheet.Range['A1'];
Range.value := '222222 ';
......

这样就OK了。

5,388

社区成员

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

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