ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 排除第一段文字上面的1到多个空段,查找第一段的文字设置字体格式,并居中。

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-9-2 08:56 | 显示全部楼层 |阅读模式
怎样排除文档内第一段文字上面的1到多个空段,查找第一段的文字设置字体格式,并居中。
求前辈们帮忙!谢谢!

模拟附件.rar

3.94 KB, 下载次数: 11

TA的精华主题

TA的得分主题

发表于 2017-9-2 09:52 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-9-2 10:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
smhf_6 发表于 2017-9-2 09:52
查找 ^p^p 替换 ^p不行吗?

你好!
感谢回复!但我的需求不是要删除多个段落符,而是要排除(跳过的意思)文档内第一段文字上面的1到多个空段,查找第一段的文字设置字体格式,并居中。能否再相助?谢谢!

TA的精华主题

TA的得分主题

发表于 2017-9-2 11:30 | 显示全部楼层
13907933959 发表于 2017-9-2 10:54
你好!
感谢回复!但我的需求不是要删除多个段落符,而是要排除(跳过的意思)文档内第一段文字上面的1 ...

Sub delc()
    Dim d As Document, p As Range, ste&
    Set d = ActiveDocument: Set p = d.Content
    If p.Find.Execute("[一-﨩]", , , 1) Then
        ste = p.Paragraphs(1).Range.Start
        With p.Paragraphs(1).Range
            .ParagraphFormat.Alignment = 1
            .Font.Size = 25
            .Font.Name = "黑体"
        End With
        d.Range(0, ste).Text = Empty
    End If
End Sub

TA的精华主题

TA的得分主题

发表于 2017-9-2 14:29 | 显示全部楼层
  d.Range(0, ste).Text = Empty
不删除的话,这一句去掉…………。

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-9-2 14:34 | 显示全部楼层
本帖最后由 13907933959 于 2017-9-2 14:49 编辑
duquancai 发表于 2017-9-2 11:30
Sub delc()
    Dim d As Document, p As Range, ste&
    Set d = ActiveDocument: Set p = d.Content ...
杜前辈好!
代码收到,感谢前辈出手相助!
杜前辈、按5楼 jiminyanyan 前辈的指引,删除代码中的 d.Range(0, ste).Text = Empty 这一句,正好满足跳过第一段文字上面的1到多个段落符,查找第一段的文字设置字体格式,并居中的需求。谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-9-2 14:52 | 显示全部楼层
jiminyanyan 发表于 2017-9-2 14:29
d.Range(0, ste).Text = Empty
不删除的话,这一句去掉…………。

前辈好!
感谢您的指引,满足了需求,免得再劳杜前辈!谢谢!

TA的精华主题

TA的得分主题

发表于 2017-9-2 16:02 | 显示全部楼层
13907933959 发表于 2017-9-2 14:34
杜前辈好!代码收到,感谢前辈出手相助!杜前辈、按5楼 jiminyanyan 前辈的指引,删除代码中的 d.Range(0,  ...

Sub Setgeshi()
    With ActiveDocument.Content.Find
        If .Execute("[一-﨩]", , , 1) Then
            With .Parent.Paragraphs(1).Range
                .ParagraphFormat.Alignment = 1
                .Font.Size = 25
                .Font.Name = "黑体"
            End With
        End If
    End With
End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-9-2 16:59 | 显示全部楼层
duquancai 发表于 2017-9-2 16:02
Sub Setgeshi()
    With ActiveDocument.Content.Find
        If .Execute("[一-﨩]", , , 1) Then

杜前辈好!
感谢!感谢前辈!本来上一个代码就可满足愿望,您再给了一个更精准的,真是惊喜!!!
杜前辈、能不能劳您也给一个 http://club.excelhome.net/thread-1366504-1-1.html 这个问题的代码?我自己也弄了好长时间,实在是水平未到弄不来,只能求助前辈您了,拜谢!

TA的精华主题

TA的得分主题

发表于 2017-9-2 17:19 | 显示全部楼层
13907933959 发表于 2017-9-2 16:59
杜前辈好!
感谢!感谢前辈!本来上一个代码就可满足愿望,您再给了一个更精准的,真是惊喜!!!
杜前 ...

Sub Setgeshi()
    Application.ScreenUpdating = False
    For Each p In ActiveDocument.Paragraphs
        If Not p.Range.ParagraphFormat.Alignment = 1 Then
            p.Range.Select
            Selection.ParagraphFormat.CharacterUnitFirstLineIndent = 2
        End If
    Next
    Application.ScreenUpdating = True
End Sub
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-1-26 13:22 , Processed in 0.027167 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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