今天的题目好奇怪啊,呵呵,起因如下:

今天老婆在修改论文,她的老板提出一个非常**的要求——把Word中所有修订后的文字用特殊的字体(蓝色)标出来,然后再接受修订。我勒个去,明明有修订后的模式啊,为什么还要这么做,简直就是变态。我只能说,中国人的想法真TMD奇怪,每天都在做浪费时间的事情。

哎,老婆既然提出来了,作为一个程序员,怎能不满足老婆的各种无理要求呢?于是有了今天这篇小文章(和马伊琍没有关系哦~~~)

这种批量修改的问题一般来说有两种方案,一是看Word有没有提供相应的功能(主要是用样式),Google了一圈,发现没有。于是只能展开第二方案,也就是我们的老本行——编程。对于Word编程,其实笔者不是很熟悉,但是有一个基本的思路:

1.找到修订部分

2.更改格式

这不是纯属废话吗,其实也不尽然。虽然笔者自己不会VBA,但是Word自身确是会自己给自己写程序呢(这算不算元编程?),这个功能就是大名鼎鼎的“录制宏”,使用该功能后,就能看到VBA的脚本是如何编写的了吧。说干就干:

1)首先在工具栏上加载“审阅工具”,这一步主要是考虑之后录制的方便

2)接下来录制宏:“工具->宏->录制新宏”,填好相应的参数(包括宏的名字啊,快捷键啊等等一系列内容)

3)好了,此时千万不要做其他的操作了,点击“审阅工具”中的“后一处修订或批注”,待选中插入部分的字符后,修改字体颜色,最后接受修订

4)一气呵成之后,停止录宏

此时,打开刚才编辑好的宏(“工具->宏->宏”)

在“宏名”处搜索刚才录入的宏名,选中之后,点右侧的编辑

就会打开录制好的程序了。

Sub Macro1()    WordBasic.NextChangeOrComment
Selection.Font.Color = wdColorBlue
Selection.Range.Revisions.AcceptAll
WordBasic.AcceptChangesSelected
End Sub

当笔者直接运行这段代码的时候,执行到最后一步总是报错。由于没时间仔细琢磨,而且这只是给老婆应急的,所以狠狠心,直接删掉了。这样一来就不在报错了,而且完全满足了老婆大人的需求。提交给老婆大人的最终代码如下:

Sub Macro1()
WordBasic.NextChangeOrComment
Selection.Font.Color = wdColorBlue
Selection.Range.Revisions.AcceptAll
End Sub

【后记】目前这个程序只能单步运行,无法批量搞定整篇文档的内容。我的想法是如果WordBasic.NextChangeOrComment能够返回一个boolean,那就能使用While循环来做了,可是事实上这个函数好像不返回,查找了半天,网上也没有一些说法。好在用户对这个程序已经非常满意了,不过还是在此留一个悬念吧,如果以后有机会再仔细研究。

Word技巧杂记(二)——批量修改修订格式并接受的更多相关文章

  1. Python批量修改图片格式和尺寸

    Python批量修改图片格式和尺寸 备注: 1.导入了PIL库,是处理图片用的,很强大; 2.导入了的win32库,是判断隐藏文件用的,我们的项目需要删除隐藏文件,不需要的可以直接找到删除. 3.导入 ...

  2. word 批量修改表格格式

    For i = 1 To ActiveDocument.Tables.Count ActiveDocument.Tables(i).Cell(1, 1).Select With Selection . ...

  3. Python 批量修改图片格式和尺寸

    公司的一个项目要求把所有4096x4096的图片全部转化成2048x2048的图片,这种批量转换图片大小的软件网上很多,我的同事原来使用的美图看看的批量转换,但是稍微有点麻烦,每次还需要指定要转换的图 ...

  4. Word技巧杂记(一)——去掉页眉上方的黑线

    今天在调整文章的格式时,突然发现在页眉的上方有一条巨粗无比的黑线,不知从何处冒出来的(如下图) 经过长时间的研究,终于发现原来这是页面的边框.解决办法也很简单: 格式->边框与底纹->页面 ...

  5. Word 中批量修改所有表格格式样式

    1. 引言 我们在使用Word排版编写书籍时候,可能会带有许多表格,上百,甚至上千个表格都是有可能的.这么多的表格对于后期的样式修改是非常不利的,有什么好的方法能够一次性修改文档中所有的表格,将其统一 ...

  6. 怎样批量修改MathType公式格式

    MathType是一款数学公式编辑器,我们在写论文的时候常常会遇到,但是有时由于公式的样式.大小和间隔等不符合论文要求,这个时候我们如果一个个修改是很麻烦的,还容易出错.所以批量修改就非常的有必要了, ...

  7. 利用python批量修改word文件名的方法示例

    利用python批量修改word文件名的方法示例 最近不小心把硬盘给格式化了,由于当时的文件没有备份,所以一下所有的文件都没有了,于是只能采取补救措施,用文件恢复软件恢复了一部分的数据出来,但是恢复完 ...

  8. 怎么批量修改Word表格的宽度

    怎么批量修改Word表格的宽度 怎么批量修改Word表格的宽度呢.Word表格可根据窗口自动调整表格宽度,使得所有的表格宽度和页面宽度一样.当页面设置了新的页边距后,所有的表格都需要调整新的宽度.或者 ...

  9. 批量修改WORD表格属性

    有时候需要对word中很多表格的属性进行修改,而word无法批量修改属性,所有这里记录一个宏 Sub TableFormatter() Dim oTbl As Table, i As Integer ...

随机推荐

  1. .net core虚拟目录配置

    .net core在iis上配置虚拟目录不起作用,只需要将app.UseStaticFiles中物理路径PhysicalFileProvider改为指定的路径即可,如:E:\\Html\\News a ...

  2. webkitdirectory 实现文件夹上传

    文件夹上传这个功能在web端可能有需求,这里就简单介绍下用法. 目前只有谷歌浏览器还有Microsoft Edge支持按照文件夹进行上传,具体可以看下百度云盘的网页版的上传按钮,在火狐下就支持按照文件 ...

  3. 通过Hibernate实现添加功能

    package com.demo.dao; import org.hibernate.Session; import org.hibernate.SessionFactory; import org. ...

  4. css简单介绍

    css层叠样式表,主要作用就是解决内容与表现分离的问题.html标签有自己的意义当然也是有自己的默认样式的,但有时候我们想修改他的样式,这时候就需要了css. 例:给字体加上颜色,我们有如下几种方法: ...

  5. hdu3873 Invade the Mars 有限制的最短路

    此段略过.看完题目,觉得这真的是一道好题目.自己有想法,但是实现起来却很难.看题解,写代码,然后写题解,意义何在?我不认为自己总是这么弱.就算抄代码,我也要有自己的理解.菜鸟总会成长. 首先,题目必须 ...

  6. java servlet 3.0文件上传

    在以前,处理文件上传是一个很痛苦的事情,大都借助于开源的上传组件,诸如commons fileupload等.现在好了,很方便,便捷到比那些组件都方便至极.以前的HTML端上传表单不用改变什么,还是一 ...

  7. 实验1 OpenGL初识

    实验预备知识 Windows下的OpenGL编程步骤简单介绍详见课程实验教学博客-实验准备安装GLUT包与创建工程: http://www.cnblogs.com/opengl/archive/201 ...

  8. UVa修改版02

    #include<stdio.h> int main() { int i,k=-1,t; char a[100]; scanf("%d",&t); while( ...

  9. 03--实例讲解虚拟机3种网络模式(桥接、nat、Host-only)

    前言 很多人安装虚拟机的时候,经常遇到不能上网的问题,而vmware有三种网络模式,对初学者来说也比较眼花聊乱,今天我就来基于虚拟机3种网络模式,帮大家普及下虚拟机上网的背景知识.(博文原创自http ...

  10. Linux常用命令速查

    索引表格 命令 功能简述 目录与文件基本操作 pwd 显示当前目录 ls 列出目录和文件名称 cp 复制文件或目录 mv 移动或更名现有的文件或目录 rm 删除文件或目录 mkdir 新建目录 rmd ...