Word文書のリストの姓名の順序をバッチ変更する方法

今すぐ共有:

この記事では、Word文書内のリストにある姓と名の順序を一括で変更する方法をご紹介します。

英語の名前には、名、ミドルネーム、および姓が含まれます。 そして、それはまったく同じ順序で書かれています。 グローバリゼーションの結果、文化のさまざまな地域の人々が、いつでもより頻繁に交流するようになりました。 その結果、今日では多くの国際会議があります。 また、他の言語の名前は順序が異なる傾向があります。 そのため、リスト内の名前と名前の順序を変更する必要がある場合があります。 重要なのは、それをバッチで行う方法です。リスト内の名前と名前の順序をバッチで変更する

実際には、マクロを使用してWordでこれを実行できます。 以下の指示に従ってください。

リスト内の名前と名前の順序を変更する

  1. まず最初に、Wordで複数行の2列表を作成してください。
  2. 最初の列に、順序を変更する必要がある名前を入力します。 名前の後にスペースを入れないように注意してください。
  3. XNUMX番目の列は空白のままにします。
  4. この後、「開発者」タブをクリックし、「VisualBasic」をクリックしてVBAエディターをトリガーします。 「開発者」タブが利用できない場合は、代わりに「Alt + F11」を押してください。「開発者」をクリック->「VisualBasic」をクリック
  5. 次に、左側の列の[通常]をクリックして、新しいモジュールを作成します。
  6. 次に、[挿入]タブをクリックし、ドロップダウンメニューで[モジュール]を選択します。「通常」をクリック->「挿入」をクリック->「モジュール」をクリック
  7. 次に、新しいモジュールをダブルクリックして開きます。
  8. そして、そこに次のコードを貼り付けます。
Sub ExchangeNameOrder()
  Dim strOriginalName As String, strNewName As String
  Dim aryOriginalName() As String
  Dim nIndex As Integer
  Dim objTable As Table
  Dim objOriginalName As Cell
  Dim objOriginalNameRange As Range
  Dim objExchangedNameRange As Range
  Dim nRowNumber As Integer
  
  Set objTable = ActiveDocument.Tables(1)
  nRowNumber = 1
  '  Traversing the names in column 1
  For Each objOriginalName In objTable.Columns(1).Cells
    Set objOriginalNameRange = objOriginalName.Range
    objOriginalNameRange.MoveEnd Unit:=wdCharacter, Count:=-1
    Set objExchangedNameRange = objTable.Cell(i, 2).Range
    objExchangedNameRange.MoveEnd Unit:=wdCharacter, Count:=-1
 
    strOriginalName = objOriginalNameRange.Text
    aryOriginalName() = Split(strOriginalName, " ")
 
    '  Exchange the order of first name and last name, and put the new name in column 2.
    If UBound(aryOriginalName) > 0 Then
      strNewName = aryOriginalName(UBound(aryOriginalName))
 
      For nIndex = 1 To UBound(aryOriginalName) - 1
        strNewName = strNewName & " " & aryOriginalName(nIndex)
      Next nIndex
 
      strNewName = strNewName & " " & aryOriginalName(0)
      objExchangedNameRange.InsertAfter (strNewName)
    Else
      objExchangedNameRange.InsertAfter (strOriginalName)
    End If

    nRowNumber = nRowNumber + 1
 
  Next objOriginalName
  MsgBox ("The first name and last name have been exchanged the order in column2.")
End Sub
  1. 最後に、「実行」をクリックします。コードの貼り付け-> [実行]をクリックします

これで、交換が完了したことを通知するメッセージボックスが表示されます。 XNUMX番目の列に新しい順序で名前が表示されます。 以下の結果を確認してください。名前の順序を入れ替える

データを取り戻す最後の希望

必然的に、Wordの問題が発生することがあります。 悲しいことですが、それも非常に真実です。 ただし、Wordで崩壊が発生するたびに、私たちにできることが常にあることを覚えておく必要があります。 まず、の組み込みツールを試してください 壊れた言葉。 それが役に立たない場合は、常にそうですが、高度な修理製品に希望を固定することができます。

著者紹介:

Vera Chenは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 xlsxを回復する (NAIST) と pdf ソフトウェア製品を修理します。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com

今すぐ共有:

コメントは締め切りました。