如何在vba中反转名字和姓氏?

问题描述 投票:0回答:1

我的 Word 文档总是附带这样的人员列表:

董事:姓 名,分公司董事

成员:姓 名,XX 成员

SUNAME 名字,YY 成员

我想将姓氏和名字切换为“Firstname SURNAME”,因为我在文档的其他部分中按此顺序使用它们。我上网查了一下,只能找到excel的vba代码,没有找到word的vba代码。我怎样才能做到这一点?

我尝试过使用 With 的变体。用 * 查找,但不起作用...

谢谢

vba ms-word
1个回答
0
投票

这段代码可以完成这项工作;

Sub Test()
    Dim regExp As Object
    
    Set regExp = CreateObject("VBscript.RegExp")
    
    regExp.Pattern = "(^|Director\s*:|Members\s*:)\s*([a-zA-Z]+?)\s*([a-zA-Z]+?),"
    regExp.Global = True
    regExp.MultiLine = True
    
    ActiveDocument.Range.Text = regExp.Replace(ActiveDocument.Range.Text, "$1 $3 $2,")
    
    Set regExp = Nothing
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.