ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
12
返回列表 发新帖
楼主: 相见是缘8

[求助] 查找中英字符,数字混合的段落,如何控制查找段落的总字符数?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-6-13 13:37 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 413191246se 于 2020-6-14 12:55 编辑

略。。。。。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-13 19:38 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 相见是缘8 于 2020-6-14 08:29 编辑
413191246se 发表于 2020-6-13 13:37
相见,你好!——未设置段落标记,直接设置段落符之前的文字,请测试:

老师好!
感谢你的回复及代码!
你可能误解了,我的意思不是如你今天给的代码(单改变标题的格式,不改变标题前后段落符的格式)的意思,而是想请你在7楼的代码上再加一句:把段落符全部替换为“五号、黑色、非加粗”的代码。

Sub test()
   Dim i As Paragraph
   For Each i In ActiveDocument.Paragraphs
       If Len(i.Range) < 50 And i.Range Like "*:?" Theni.Range.Font.ColorIndex = wdBlue: i.Range.Bold = True
       If……i.Range.Font.ColorIndex= wdColorBlack: i.Range.Font.Size = 10.5: i.Range.Bold = False  '如果找到段落符全部替换为:黑色、五号、非加粗。
   Next
End Sub

因我另有用处,不知这样可成否?

TA的精华主题

TA的得分主题

发表于 2020-6-14 01:28 | 显示全部楼层
本帖最后由 413191246se 于 2020-6-14 12:54 编辑

略。。。。。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-14 09:22 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
413191246se 发表于 2020-6-14 01:28
相见,请测试:(如果还不成,就请重新在下一楼贴出文字处理前/后对照,我再重新编码)

老师好!
再次感谢你的回复及代码!
你可能还是误解了我的意思,我只想请你在7楼的代码上再加一句:把段落符全部替换为“五号、黑色、非加粗”的代码。如下面红色代码所示,因这句代码我另有它用,为下一步作准备。
Sub test()
    Dim i As Paragraph
    For Each i In ActiveDocument.Paragraphs
        If Len(i.Range) < 50 And i.RangeLike "*:?" Theni.Range.Font.ColorIndex = wdBlue: i.Range.Font.Size = 15: i.Range.Bold = True
        If……i.Range.Font.ColorIndex = wdColorBlack: i.Range.Font.Size = 10.5:i.Range.Bold = False  '如果找到段落符全部替换为:黑色、五号、非加粗。
    Next
End Sub

TA的精华主题

TA的得分主题

发表于 2020-6-14 13:04 | 显示全部楼层
* 相见,请再试试:
  1. Sub test_相见的_冒号结尾50字符段落()
  2.     Dim i As Paragraph
  3.     For Each i In ActiveDocument.Paragraphs
  4.         With i.Range
  5.             If Len(.Text) < 51 And .Text Like "*:?" Then
  6.                 With .Font
  7.                     .Size = 10.5
  8.                     .Bold = True
  9.                     .ColorIndex = wdBlue
  10.                 End With
  11.                 With .Characters.Last.Font
  12.                     .Bold = False
  13.                     .ColorIndex = wdBlack
  14.                 End With
  15.             End If
  16.         End With
  17.     Next
  18. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-14 19:34 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 相见是缘8 于 2020-6-14 19:36 编辑
413191246se 发表于 2020-6-14 13:04
* 相见,请再试试:

老师好!
你这个代码我测试了,小标题后面的段落符格式改了,小标题前面的段落符格式没改,是吧?

下午我通过在你7楼的代码上,加上下面的这几句代码,也可实现我想要的结果。
…………
Next
    WithActiveDocument.Content.Find
       With .Replacement
           .ClearFormatting
           .Font.Bold = False
           .Font.Color = wdColorBlack
           .Font.Size = 10.5
       End With
       .Execute FindText:="^13", ReplaceWith:="^p", Format:=True, Replace:=wdReplaceAll
    End With
End Sub

可我想请你把上面的这几句代码,简化成如下面这一句代码。不知可否!我水平未到,不知道在下面代码的那里,怎么加上段落符,让下面这句代码能用。

If……i.Range.Font.ColorIndex= wdColorBlack: i.Range.Font.Size = 10.5: i.Range.Bold = False  '如果找到段落符全部替换为:黑色、五号、非加粗。


TA的精华主题

TA的得分主题

发表于 2020-6-14 23:09 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
相见:
1、你是不是想找到,以冒号结尾、并且只有50个字符的段落?将其设置为加粗、蓝色?
2、你是不是想只设置以上段落的段落标记(段落符)为五号、黑色、不加粗?还是设置全文的段落符?
3、请针对附件重新测试一下运行效果(如果我的提问/回答不满意,建议重新在下一楼附上,处理前文字,处理后文字效果/要求)。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-15 07:44 | 显示全部楼层
413191246se 发表于 2020-6-14 23:09
相见:
1、你是不是想找到,以冒号结尾、并且只有50个字符的段落?将其设置为加粗、蓝色?
2、你是不是想 ...

老师好!
真是难为你了!抱歉!!!
1、我是想找到,以冒号结尾、并且小于50个字符的段落,将其全部设为加粗、小三、蓝色。
2然后再把全文的段落符设为黑色、五号、非加粗。
3、之所以反复强调想用这个代码,因后面我还另有用途!
图片.png

TA的精华主题

TA的得分主题

发表于 2020-6-15 10:56 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 413191246se 于 2020-6-15 14:37 编辑
  1. Sub test_相见的_冒号结尾50字符段落_New_New()
  2.     Dim i As Paragraph
  3.     For Each i In ActiveDocument.Paragraphs
  4.         With i.Range
  5.             If Len(.Text) < 51 And .Text Like "*:?" Then
  6.                 With .Font
  7.                     .Size = 10.5
  8.                     .Bold = True
  9.                     .ColorIndex = wdBlue
  10.                 End With
  11.             End If
  12.             With .Characters.Last.Font
  13.                 .Size = 10.5
  14.                 .Bold = False
  15.                 .ColorIndex = wdBlack
  16.             End With
  17.         End With
  18.     Next
  19. End Sub
复制代码


TA的精华主题

TA的得分主题

 楼主| 发表于 2020-6-16 07:16 | 显示全部楼层

好了,老师!感谢你这么多次的出手相助和辛劳付出!万分感谢!!!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-24 08:42 , Processed in 0.037854 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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