怎么用OLE实现Word中表格合并单元格?很有挑战性的!

Chimae 2003-11-21 01:54:33
如果实现,分数可以再加!
...全文
126 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Chimae 2003-11-21
  • 打赏
  • 举报
回复
不过呢?这个程序还是有Bug的,当表格中其中一个单元格已经输入文本的时候,再合并单元格会出现奇怪现象,大家不妨试试看!
ccrun.com 2003-11-21
  • 打赏
  • 举报
回复
在Word中控制表格合并比较麻烦,不如Excel中方便。
试了好大一会才搞定。
以下代码已测试通过,新建一个Word文档,插入一个10*10的表格,保存退出。用程序打开这个Word文档,当程序执行以后将从第2行,第3列开始,合并一个3*3的单元格。

#define wdLine 5
#define wdCharacter 1
#define wdExtend 1

Variant select = WordApp.OlePropertyGet("Selection");

//移动到第3列
select.OleFunction("MoveRight", wdCharacter, 2);
//移动到第2行,注意这里填1
select.OleFunction("MoveDown", wdLine, 1);
//向右选择3例
select.OleFunction("MoveRight", wdCharacter, 3, wdExtend);
//向下选择3行,注意这里填2
select.OleFunction("MoveDown", wdLine, 2, wdExtend);
//执行合并
select.OlePropertyGet("Cells").OleProcedure("Merge");
7rainbow 2003-11-21
  • 打赏
  • 举报
回复
Cell1=Worksheet.OlePropertyGet("Cells",3,5);
Cell2=Worksheet.OlePropertyGet("Cells",3,8);
Range=Worksheet.OlePropertyGet("Range",Cell1,Cell2);
Range.OleFunction("Merge");
flc 2003-11-21
  • 打赏
  • 举报
回复
噶关注
pzoon 2003-11-21
  • 打赏
  • 举报
回复
UP
pzoon 2003-11-21
  • 打赏
  • 举报
回复
UP

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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