• Delphi 运行Word VBA 宏 删除软回车


    Sub 整理网页()
    '整理网页:删除软回车、删除空白段、使段落文字两端对齐
    Selection.WholeStory
       
        Selection.Find.ClearFormatting
        Selection.Find.Replacement.ClearFormatting
        With Selection.Find
            .Text = "?^l"
            .Replacement.Text = "^&^p"
            .Forward = True
            .Wrap = wdFindContinue
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchByte = False
            .MatchAllWordForms = False
            .MatchSoundsLike = False
            .MatchWildcards = True
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^1^l"
            .Replacement.Text = "^&^p"
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^l"
            .Replacement.Text = ""
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^s"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
       
        With Selection.Find
            .Text = "^p^p"
            .Replacement.Text = "^p"
            .MatchWildcards = False
        End With
        Selection.Find.Execute Replace:=wdReplaceAll
        Selection.Paragraphs.Alignment = wdAlignParagraphJustify
    End Sub

    Delphi可以通过ole word的方式来运行宏:

    WordDoc := WordApp.Documents.open(fileName:=fn, Revert:=true, Visible := True);
    wordapp.Run( MacroName:='整理网页');

    非常蹊跷的是,如果Visible := False,则word宏不能运行!

  • 相关阅读:
    一个SQL语句实现的统计功能
    VS2005中的全角BUG(C#代码)[转]
    Observer Pattern(观察者模式)及其在C#中的实现
    我觉得VS2003中最差的地方
    上班了,有点困:(
    GPRS
    今天是郁闷的一天
    今天上午给公司老总演示了SharePoint项目的产品雏形
    介绍一下SharePoint
    SharePoint Service里面的东东真让人头疼
  • 原文地址:https://www.cnblogs.com/wxb-km/p/5212101.html
Copyright © 2020-2023  润新知