admin 管理员组

文章数量: 1184232

参考:

近期需要将pdf转word并编辑使用,在使用工具转过之后,发现转出来的word全是一个个的小框,于是参考上述链接删除文本框。

在word2007中alt+F11。

赋值如下代码,保存,回到word并alt+F8,运行。

然后会报错:

不知为何,搜索未果,可能是word2003和word2007不一样吧。

但是虽然没有学过vb,但是这样的代码看一下还是能看出其大致作用的。

调试之后,做出如下处理:



Sub 删除全部文本框()
'
' 删除全部文本框,保留文字


'    Dim i As Shape
'    For Each i In ActiveDocument.Shapes
'       i.ConvertToFrame
'    Next

Dim ii As Frame
For Each ii In ActiveDocument.Frames
ii.Delete
Next


' 取消所有框线
' ------------注:若文章当中存在有用的框线,请删除下边这几句---------
Selection.WholeStory
With Selection.ParagraphFormat
.Borders(wdBorderLeft).LineStyle = wdLineStyleNone
.Borders(wdBorderRight).LineStyle = wdLineStyleNone
.Borders(wdBorderTop).LineStyle = wdLineStyleNone
.Borders(wdBorderBottom).LineStyle = wdLineStyleNone
.Borders(wdBorderHorizontal).LineStyle = wdLineStyleNone
End With
' ------------注:若文章当中存在有用的框线,请不要执行上边这几句---------


End Sub


如上所示,将红色部分代码给注释掉(出错是因为这里面有命令不识别),再次保存运行后成功转化。

转化过的word格式混乱,需重新整理格式,这里给出一个去除所有分节符的操作:

ctrl+F,在替换中做出如下操作:

其中^b表示的就是分节符,点击全部替换将去除所有分节符。


本文标签: 删除全部 删除文本 编程