国学数典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 43410|回复: 22

[求助] 如何批量删除word文本框而保留其中的内容

[复制链接]

该用户从未签到

发表于 2009-5-31 07:21 | 显示全部楼层 |阅读模式
有一个WORD文件,大约300页左右,每一页是一个文本框,里面有内容。在使用CTRL+A以及其它操作时,只是针对当前页面进行,无法针对整个WORD文件操作,想请教各位,如何批量删除word文本框而保留其中的内容。
PS,在网上查了一下,说是使用宏,录取成宏后,一运行,文本框及里面的内容全没有了,而我不需要文本框,只需要其中的内容。
提前感谢各位。
回复

使用道具 举报

该用户从未签到

发表于 2009-5-31 07:22 | 显示全部楼层
可以存成txt文件,然后再用word打开保存一下。只不过这样的话格式就都没有了。
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-5-31 07:56 | 显示全部楼层
可以存成txt文件,然后再用word打开保存一下。只不过这样的话格式就都没有了。
lafeng99 发表于 2009-5-31 07:22

另存之后,TXT文件没有任何内容。
还是感谢您。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 08:58 | 显示全部楼层
关注中……
等高手出来解决难题,我也跟着学点儿……
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 09:08 | 显示全部楼层
估计word文档中的文本框及相关内容可能是图片形式,这样处理起来就很麻烦了,是否还是立足于从网上找一下其它版本
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 09:10 | 显示全部楼层
如果文本框内是文本而不是图,则可以存为txt,应该无问题。
如果不涉及保密,不妨发上来,我帮你看看。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 09:35 | 显示全部楼层
我用adobe acrobat procfessional 9将word文档转换成PDF格式,再将PDF另存为纯文本,文本框消失,文本保留,成功。

评分

2

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 09:36 | 显示全部楼层
1、如果不是图像而是文本,可以先从文档开头选择,然后摁住SHIFT键,再将鼠标点到文档最后,此时文档全部内容被选住,注意不要直接选择编辑中的全选,然后复制粘贴到新的空白文档中,点击“仅保留文本”。估计可以实现。
2、如果是文本,直接选择编辑中的全选,然后复制粘贴到新的空白文档中,点击“仅保留文本”。也可以实现。
3、如果文档是由多个文本框构成,那就比较麻烦,我的办法是逐个将文本框单独复制粘贴,为不混淆起见,可以选择剪切粘贴。然后按2的方法可以实现。
4、如果你说的是文本在表格中,则点击表格,从表格属性中选择设置。

评分

2

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 10:24 | 显示全部楼层
这个问题值得关注。
如果不让复制文本内容,通常是图片格式;要么就是特殊制作。
在“豆丁”看到题DOC格式的文本资料,还没有找到提取方式。
http://www.docin.com/p-1389563.html

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 14:10 | 显示全部楼层
8# igiman

楼上说得很详细了. 文本还好, 如果是图片就麻烦得多.
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-5-31 17:13 | 显示全部楼层
本帖最后由 comme 于 2009-6-1 10:24 编辑

如果你会 XML 的话,可以将 Word 文档保存成 XML 文档。然后将符合“//w:txbxContent” XPath 路径表达式(即是所有“w:txbxConent”元素)的所有子元素提取出来(可用如下代码实现),然后删除文档的“wx:sub-section”元素下的所有“w:p”子元素,将刚才提取出来的内容粘贴到该元素下,即可去掉每页的文本框。

效果见附件。

如果你弄不了,可以发给我,帮你稍微弄一下就行了。在这里稍微存一段代码,这段脚本代码是在 FirstObject XML Editor 中运行的,用于提取所有“w:txbxConent”元素(文本框)的内容。


  1. str ContentForTxbxContent_Generated( CMarkup mDocToQuery )
  2. {
  3. // Content of w:txbxContent
  4. CMarkup mList;
  5. // 提取所有文本框的内容
  6. mDocToQuery.ResetPos();
  7. while ( mDocToQuery.FindElem("//w:txbxContent") )
  8. {
  9.    mList.AddSubDoc (mDocToQuery.GetElemContent());
  10.    mList.GotoParentElemIndex (0);
  11. }
  12. // 删除原来的段落(这里假设原文档所有内容都在文本框里面)
  13. mDocToQuery.ResetPos();
  14. while ( mDocToQuery.FindElem ("//wx:sub-section") )
  15. {
  16.   mDocToQuery.IntoElem ();
  17.   while ( mDocToQuery.FindElem ("w:p") ) {
  18.    mDocToQuery.RemoveElem ();
  19.   }
  20. }
  21. // 将刚才提取的内容写回文档
  22. mDocToQuery.ResetPos();
  23. mDocToQuery.FindElem ("//wx:sub-section");
  24. mDocToQuery.InsertChildSubDoc (mList);
  25. mDocToQuery.Save ("c:\\doc.xml");
  26. return mDocToQuery;
  27. }
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

2

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-6-1 10:22 | 显示全部楼层
今天改了一下,估计楼主自己操作一下就可以了。操作步骤:
  • 用另存为功能,将 Word 文档保存为 XML 文件,如“text.xml”。
  • 关闭 Word。
  • 下载附件中的 FirstObject XML 编辑器。
  • 解压,得到两个文件,执行其中的可执行文件,打开编辑器。
  • 用编辑器打开“text.xml”。
  • 用编辑器打开解压得到的另一个附件“program1.foal”。
  • 按键盘上的 F9,运行 Program1.foal 程序。
  • 在提示“Select document for parameter”对话框中点“确定”按钮。
  • 编辑器将把处理后的文件输出为 C 盘“doc.xml”文件。
  • 用 Word 打开 doc.xml。
  • 剩下的工作自己搞定。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-12-10 09:50 | 显示全部楼层
这确实是一个常见的问题,平时我也会遇到,一直没特别留意去解决它。今天看到版主也提出这个问题,于是跃跃欲试就想露一手。为争取更多阿堵物,我决定“短话长说”,写一篇五千字的论文,以解决此问题……

呵呵,开个玩笑,请别介意!

我试验了几种方法,以下方法最简单:

1、在Word中,另存为“RTF格式”;
2、用WordPad来开这个RTF文件(注:WordPad是“开始-程序集-附件-写字板”,不要用Word打开它);
3、在WordPad中另存为TXT即可。

前提条件是:文件别太大,用WordPad能打开,能另存。因有的文件动辙几百兆,用WordPad恐怕不一定能打开,那么,就尝试将文件割开成若干小一点的文件,再处理。

另,既最终得到的是TXT,原文的格式自然是无法保留的了。

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-12-10 10:26 | 显示全部楼层
Sub Example()
Dim i As Table
For Each i In ActiveDocument.Tables
i.ConvertToText wdSeparateByTabs, True
Next
End Sub
我一直用。保存宏就可以了。

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-12-10 16:00 | 显示全部楼层
非常感谢14#分享的宏代码!在此基础上,我编写出以下宏代码,自动清除Word当中的全部的文本框、图文框,在Word 2003当中测试通过:

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中按“Alt+F11”,将上边的那一大段宏复制/粘贴进去,保存即可。
执行则按“Alt+F8”,选择“删除全部文本框”,点“执行”。

评分

2

查看全部评分

回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2017-6-25 00:22
  • 签到天数: 358 天

    [LV.8]以坛为家I

    发表于 2009-12-10 23:29 | 显示全部楼层
    用CAJ里的文字识别功能也可以复制扫描版的PDF文件 用CAj打开PDF文件 点击文字识别功能 再找到要复制的文字 框定范围 一会就自动出现识别的文字 可以选择复制到剪贴板 也可以选择发送到Word
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2009-12-13 16:45 | 显示全部楼层
    8楼的方法应该能应对楼主所提出的问题了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-6-23 21:11
  • 签到天数: 283 天

    [LV.8]以坛为家I

    发表于 2014-1-23 23:35 | 显示全部楼层
    个人实际用了一下,13楼的方法简便可行,不错。其他各位的方法,似乎有技术难度,呵呵。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-2-1 22:12 | 显示全部楼层
    全选,剪切,选择性粘贴,无格式文本,确定。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-4-6 22:18
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2017-3-31 14:28 | 显示全部楼层
    貌似15楼的方法不太可行,我用下来出错了。我是只想删除删除所有文本框,但是想保留正文的格式,所以转成txt方法不太好,因为这会丢掉正文格式。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2017-6-16 11:53
  • 签到天数: 67 天

    [LV.6]常住居民II

    发表于 2017-4-1 12:02 | 显示全部楼层
    Ctrl+A 全选文本框
    Ctrl+C 复制所有内容
    打开写字板
    Ctrl+V 粘帖

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2017-4-11 16:00 | 显示全部楼层
    没有文件,怎么说呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2017-4-21 19:01 | 显示全部楼层
    试验了一下,13楼的方法确实简便可行。尽管是txt格式,但是毕竟可以检索了。其他的方法技术难度高,有点看不懂呀。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

     
     
    账号故障技术支持
    有账号问题请留言,
    遇到被冻结时请按论坛提供的方法解冻,邮件找回的方式,如果有困难可以QQ留言.

    Archiver|手机版|小黑屋|国学数典 ( 2006-2014 京ICP备13025677号-1

    GMT+8, 2017-6-26 02:41

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表