Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 在Word文档中跨列逐行分析文本_Vba_Ms Word - Fatal编程技术网

Vba 在Word文档中跨列逐行分析文本

Vba 在Word文档中跨列逐行分析文本,vba,ms-word,Vba,Ms Word,使用VBA或Interop.Word,我只想逐行解析Word文档中的文本,而不管该行中的文本是否跨越多个列。根据以下示例,我希望: 第1行=“第1行第5行” 第2行=“第2行第6行” 第3行=“第3行第7行” 等等 我在Word对象模型中找不到任何方法、属性或对象可以促进这一点。我尝试导出为PDF格式,然后在Word中再次打开同一个文件,但转换过程并没有逐行保留原始文本,有些地方变得非常混乱 根据我上面的评论:解决方法是尝试使用布局模式重新创建文档。在本例中,Word文件来自打印文档的Adobe

使用VBA或Interop.Word,我只想逐行解析Word文档中的文本,而不管该行中的文本是否跨越多个列。根据以下示例,我希望:

第1行=“第1行第5行”

第2行=“第2行第6行”

第3行=“第3行第7行”

等等

我在Word对象模型中找不到任何方法、属性或对象可以促进这一点。我尝试导出为PDF格式,然后在Word中再次打开同一个文件,但转换过程并没有逐行保留原始文本,有些地方变得非常混乱


根据我上面的评论:解决方法是尝试使用布局模式重新创建文档。在本例中,Word文件来自打印文档的Adobe PDF扫描导出,因此它仅适用于这些情况。

我怀疑这是否可能。Word并不是设计用来在内部按照页面布局“查看”页面的。我所能想到的唯一一件事可能是看完每一段并检查Range.Information(wdVerticalPositionRelativeToPage)。如果它对同一页返回相同的值(或多或少),那么它就在同一行。谢谢Cindy。我不确定我想再碰这个了哈哈!刚花了30多个小时,但还是成功了。问题是这个文档来自于一个由愚蠢的扫描软件生成的PDF,该软件将每页中央的一个缺口解释为一列。经过一番挖掘,我找到了一种方法,可以使用AcrobatPro在打开“布局”模式的情况下导出到Word,默认情况下是“流”。然后在每个块周围创建矩形对象(文本框)。我痛苦地找到了一种方法来解析其中的大部分内容。好吧:-)我不想让你坐着不回答:-)