【发布时间】:2015-05-08 21:23:43
【问题描述】:
我遇到了一个逻辑问题,我认为解决它的唯一方法是检测单元格边界。有没有办法在 Excel VBA 中做到这一点?
背景
我正在做一个将 Word 表格粘贴到 Excel 工作表中的项目。但是,我发现 Word 表格中的换行符将文本分隔为合并在一起的单独单元格。 VBA 不喜欢合并的单元格,所以我添加了一行代码来取消合并工作表中的所有单元格。结果是 Word 表中的一些单元格已分散到多个单元格中,到处添加新行。我一直在编写 VBA 代码,使用 Word 文档中的单行“ID”列键作为标记来分割实际的表格单元格,将分离的单元格合并回一个单元格。
问题
当我粘贴一个带有 另一个表 嵌套在单元格中的表格时,它会添加与该内部表格相对应的数字列和行。我还不能添加图像,所以我会在这里画出来(对不起)。每一行都是一个新行。
"Header1" l "No Header" l "Header2"
"Cell text prior to table" l "(blank)" l
"Table (1,1) text" l "Table (1,2) text" l
Problem text 1 l Problem text 2 l
"Table (2,1) text" l "Table (2,2) text" l
"Cell text after table" l "(blank)" l
编辑:我应该澄清我希望显示合并的单元格
表格之前的单元格文本
表 (1,1) 内容 表(1,2)内容
表 (2,1) 内容 表(2,2)内容
表格后的单元格文本
等等……
我无法确定“问题文本 1”和“问题文本 2”是否最初是由换行符分隔的 (1,1) 和 (1,2) 的一部分,或者它们是否是整个新行桌子。我能想到的唯一方法是识别单元格边界(因为嵌套表的格式是从 word 继承的)并编写一百万个嵌套的“if 子句”来确定单元格需要在哪里添加它们的值。
【问题讨论】:
标签: excel ms-word logic border vba