ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1602|回复: 4

[求助] 如何将Word排版设置转换为VB语言

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-11-7 10:44 | 显示全部楼层 |阅读模式
本帖最后由 信合小干事 于 2013-11-7 17:11 编辑

请问如何将以下word排版方式转化为VB代码,我想做个加载宏,录制宏老是出错,求大神指教
以下设置前几个可以改变顺序,全是利用”查找与替换“(CTRl+H),”空“代表不输入,【】代表格式设置
1、查找  ^p ,替换 空
2、(勾选通配符,以下步骤全带有此项),查找  -*-,替换 ^&【字体:仿宋  三号】
3、查找  第[!章]{1,5}章,替换 ^p^&
4、查找  第[!条]{1,5}条,替换 ^p^&
5、查找  主题词*^13,替换 空
6、查找 ([一二三四五六七八九十]@),替换^p^&
7、查找   第[!章]{1,5}章*^13,替换【格式-字体--(黑体,三号、加粗) 段落-居中】8、查找    第[!条]{1,5}条,替换【 格式-字体-(仿宋、三号、加粗)  段落-首行缩进 2字符】

2楼已自己搞定,喜欢的拿去吧!

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-7 17:09 | 显示全部楼层
  1. Sub 公文设置()
  2. '
  3. ' 公文设置 Macro
  4. ' 宏在 2013/11/7 由 USER 创建
  5. '全文选取,设置仿宋字体,16号
  6.     Selection.WholeStory
  7.     'Word操作:Ctrl+A
  8.     Selection.Font.Name = "仿宋_GB2312"
  9.     Selection.Font.Size = 16
  10. ' 去掉段落标记
  11.    Selection.WholeStory
  12.     Selection.Find.ClearFormatting
  13.     Selection.Find.Replacement.ClearFormatting
  14.     With Selection.Find
  15.         .Text = "^p"
  16.         .Replacement.Text = ""
  17.         .Forward = True
  18.         .Wrap = wdFindContinue
  19.         .Format = False
  20.         .MatchCase = False
  21.         .MatchWholeWord = False
  22.         .MatchByte = False
  23.         .MatchWildcards = False
  24.         .MatchSoundsLike = False
  25.         .MatchAllWordForms = False
  26.     End With
  27.    Selection.Find.Execute Replace:=wdReplaceAll
  28.      '全部搜索
  29. ' 替换"-*-"
  30.   Selection.Find.Execute Replace:=wdReplaceAll
  31.     Selection.Find.ClearFormatting
  32.     Selection.Find.Replacement.ClearFormatting
  33.     With Selection.Find
  34.         .Text = "-*-"
  35.         .Replacement.Text = ""
  36.         .Forward = True
  37.         .Wrap = wdFindContinue
  38.         .Format = False
  39.         .MatchCase = False
  40.         .MatchWholeWord = False
  41.         .MatchByte = False
  42.         .MatchAllWordForms = False
  43.         .MatchSoundsLike = False
  44.         .MatchWildcards = True
  45.     End With
  46.      Selection.Find.Execute Replace:=wdReplaceAll
  47.      '全部搜索
  48. ' 查找 第*章 第*条 分段落
  49.    Selection.Find.ClearFormatting
  50.     Selection.Find.Replacement.ClearFormatting
  51.     With Selection.Find
  52.         .Text = "第[!章]{1,5}章"
  53.         .Replacement.Text = "^p^&"
  54.         .Forward = True
  55.         .Wrap = wdFindContinue
  56.         .Format = False
  57.         .MatchCase = False
  58.         .MatchWholeWord = False
  59.         .MatchByte = False
  60.         .MatchAllWordForms = False
  61.         .MatchSoundsLike = False
  62.         .MatchWildcards = True
  63.     End With
  64.     Selection.Find.Execute Replace:=wdReplaceAll
  65.      '全部搜索
  66.     With Selection.Find
  67.         .Text = "第[!条]{1,5}条"
  68.         .Replacement.Text = "^p^&"
  69.         .Forward = True
  70.         .Wrap = wdFindContinue
  71.         .Format = False
  72.         .MatchCase = False
  73.         .MatchWholeWord = False
  74.         .MatchByte = False
  75.         .MatchAllWordForms = False
  76.         .MatchSoundsLike = False
  77.         .MatchWildcards = True
  78.     End With
  79.    Selection.Find.Execute Replace:=wdReplaceAll
  80.      '全部搜索
  81. ' 替换以主题词开头至段落标记处,替换为空
  82.     Selection.Find.ClearFormatting
  83.     Selection.Find.Replacement.ClearFormatting
  84.     With Selection.Find
  85.         .Text = "主题词*^13"
  86.         .Replacement.Text = ""
  87.         .Forward = True
  88.         .Wrap = wdFindContinue
  89.         .Format = False
  90.         .MatchCase = False
  91.         .MatchWholeWord = False
  92.         .MatchByte = False
  93.         .MatchAllWordForms = False
  94.         .MatchSoundsLike = False
  95.         .MatchWildcards = True
  96.     End With
  97.    Selection.Find.Execute Replace:=wdReplaceAll
  98.      '全部搜索
  99. ' 对包含(*),内含一二三四五六七八九十,增加段落标记
  100.     Selection.Find.ClearFormatting
  101.     Selection.Find.Replacement.ClearFormatting
  102.     With Selection.Find
  103.         .Text = "([一二三四五六七八九十]@)"
  104.         .Replacement.Text = "^p^&"
  105.         .Forward = True
  106.         .Wrap = wdFindContinue
  107.         .Format = False
  108.         .MatchCase = False
  109.         .MatchWholeWord = False
  110.         .MatchByte = False
  111.         .MatchAllWordForms = False
  112.         .MatchSoundsLike = False
  113.         .MatchWildcards = True
  114.     End With
  115.     Selection.Find.Execute Replace:=wdReplaceAll
  116.      '全部搜索
  117. ' 对第*章,居中,字体设置
  118.    Selection.Find.ClearFormatting
  119.     Selection.Find.Replacement.ClearFormatting
  120.     Selection.Find.Replacement.Font.Name = "黑体"
  121.     '字体设置为黑体
  122.     Selection.Find.Replacement.Font.Bold = wdToggle
  123.     '字体加粗
  124.     Selection.Find.Replacement.Font.Size = 16
  125.     '字体设置为三号
  126.     Selection.Find.Replacement.ParagraphFormat.Alignment = wdAlignParagraphCenter
  127.     '段落居中
  128.     With Selection.Find
  129.         .Text = "第[!章]{1,5}章*^13"
  130.         .Replacement.Text = ""
  131.         .Format = True
  132.         '是否通配符
  133.         .MatchCase = False
  134.         .MatchWholeWord = False
  135.         .MatchByte = False
  136.         .MatchAllWordForms = False
  137.         .MatchSoundsLike = False
  138.         .MatchWildcards = True
  139.     End With
  140.    Selection.Find.Execute Replace:=wdReplaceAll
  141.      '全部搜索
  142. ' 对第*条,居中,字体设置
  143.     Selection.Find.ClearFormatting
  144.     Selection.Find.Replacement.ClearFormatting
  145.     Selection.Find.Replacement.Font.Name = "仿宋_GB2312"
  146.      '字体设置为仿宋_GB2312
  147.     Selection.Find.Replacement.Font.Bold = wdToggle
  148.      '字体加粗
  149.     Selection.Find.Replacement.Font.Size = 16
  150.      '字体设置为三号
  151.     With Selection.Find.Replacement.ParagraphFormat
  152.         .SpaceBeforeAuto = False
  153.         .SpaceAfterAuto = False
  154.         .FirstLineIndent = CentimetersToPoints(0.35)
  155.         .CharacterUnitFirstLineIndent = 2
  156.         '首行缩进2个字符
  157.          End With
  158.     With Selection.Find
  159.         .Text = "第[!条]{1,5}条"
  160.         .Replacement.Text = ""
  161.         .Forward = True
  162.         .Wrap = wdFindContinue
  163.         .Format = True
  164.        '是否通配符
  165.         .MatchCase = False
  166.         .MatchWholeWord = False
  167.         .MatchByte = False
  168.         .MatchAllWordForms = False
  169.         .MatchSoundsLike = False
  170.         .MatchWildcards = True
  171.     End With
  172.    Selection.Find.Execute Replace:=wdReplaceAll
  173.     '全盘搜索
  174. End Sub
复制代码


TA的精华主题

TA的得分主题

发表于 2013-11-8 10:38 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
楼主,会录制宏已经是绝大的进步!——再向后翻翻,把我的那个——Word 2003  VBA 微软官方帮助 文件下载,学习学习,就好了,或看看 Word 的帮助文件“宏”那一部分。

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-11-11 13:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
413191246se 发表于 2013-11-8 10:38
楼主,会录制宏已经是绝大的进步!——再向后翻翻,把我的那个——Word 2003  VBA 微软官方帮助 文件下载, ...

谢谢了,阁下真是太有心了!

TA的精华主题

TA的得分主题

发表于 2019-10-22 22:29 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-26 04:31 , Processed in 0.029701 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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