Wordのコメント作者名をMacで変更するVBA活用ガイド

みなさんはWord文書の「コメント」の作者名が、なぜか意図しない名前になってしまって困った経験はありませんか。私も上司に提出する資料で、自分以外の表示名が残ってしまって焦った思い出があります。今回はMac版WordやMicrosoft 365環境でも活用できるVBAを使って、コメントの作者名を好みの名前に変更する方法を詳しくご紹介します。

Wordコメントの作者名を変更するための基本知識

Wordでコメントを挿入すると、その時点で設定されている「ユーザー名」が自動的にコメントに反映されます。後から「すでに入っているコメントの作者名を変更したい!」と思っても、通常のWord設定画面では対応できないのです。これを克服するにはVBAマクロの活用が近道となります。私も最初は「そんな面倒なことしなきゃいけないの?」と戸惑いましたが、一度流れをつかむと意外と簡単でした。

なぜ通常設定で作者名を変えられないのか

Wordのオプションからユーザー名を変更すると、新たに作成するコメントの作者名は変わりますが、すでに挿入済みのコメントには反映されません。これはWordの設計上、過去に作成したコメントの履歴ややり取りの証拠を保持する仕組みがあるためです。履歴管理のためとはいえ、提出前に前任者の名前がちらついてしまうと、やはり気まずい思いをすることもあるので、どうしても修正したい場合はVBAによる一括変更を検討しましょう。

実務でありがちなシチュエーション

提出書類のレビュー用コメントを外部の協力会社さんが付けていた場合や、部署移動に伴いPCのアカウント名が変わった場合など、コメントが大量に残っていると手動修正が難しくなります。そんなときにVBAマクロを使うことで、一度にぱっと書き換えができるのは魅力的ですね。

面倒なコメントの再挿入をしなくても、一括で作者名やイニシャルを変更できるのがVBAの利点です。

Mac版WordでもVBAは使えるのか

Mac版のWordでもVBA機能は提供されています。ただし、Windows版と比較すると若干操作画面や細部の仕様が異なる場合があるため、VBE(Visual Basic Editor)の呼び出し方などに違いがある点に注意しましょう。私は普段Windows環境をメインで使っていたのですが、在宅勤務の際にMacを使うようになり、最初は戸惑いました。しかし慣れれば特に大きな問題はありませんでした。

個人的にはMac版のWordでVBAを使う場合、メニュー構成が違うので最初に「開発」タブの表示方法を調べるのに時間がかかりました。Windows版に慣れている人ほど「どこをクリックするの?」となりがちです。

Mac版Wordで開発タブとVBEを開く手順

Wordメニューから「Word」→「環境設定」を開き、「リボンとツールバー」で「開発」を有効にします。すると上部のリボンに「開発」タブが追加されるので、そこから「Visual Basic」を選択すると、VBEが起動できるようになります。

コメントの作者名を一括変更するVBAの例

ここでは、選択範囲に含まれるコメントの作者名とイニシャルを変更するVBAコードをご紹介します。このコードを実行することで、指定範囲のコメントがすべて別の名前に置き換わります。

VBAコード全体

Sub ChangeCommentAuthor()
    Dim I As Long
    Dim xNewName As String
    Dim xShortName As String
    
    If Selection.Comments.Count = 0 Then
        MsgBox "選択範囲にコメントがありません。", vbInformation, "お知らせ"
        Exit Sub
    End If
    
    xNewName = InputBox("変更後の作者名を入力してください。", "作者名の変更")
    xShortName = InputBox("変更後のイニシャルを入力してください。", "イニシャルの変更")
    
    If xNewName = "" Or xShortName = "" Then
        MsgBox "作者名またはイニシャルが空白です。", vbInformation, "お知らせ"
        Exit Sub
    End If
    
    With Selection
        For I = 1 To .Comments.Count
            .Comments(I).Author = xNewName
            .Comments(I).Initial = xShortName
        Next I
    End With
End Sub

実行手順

1)Wordの文書を開き、作者名を変更したいコメントが含まれる部分を範囲選択します。
2)VBEを開き、新規モジュールを作成し、上記のコードを貼り付けます。
3)F5キーなどでコードを実行すると、ポップアップ画面が2回表示されますので、変更後の作者名とイニシャルを入力します。
4)OKを押すと、選択範囲のコメントの作者名とイニシャルがまとめて書き換わります。

私が会社で配布資料を作る際、上司に名前が残っていて「これ自分の名前にできない?」と急に頼まれたときも、このマクロを実行したら一発で解決できました。初めて知った同僚は「そんなウラ技が!」と驚いていました。

特定の作者だけ置き換える場合

複数のコメントが混在している文書で、「ある特定の人物のコメントだけ」作者名を変えたいケースもあります。その場合は条件分岐を加えましょう。たとえば、「.Comments(I).Authorが特定の文字列ならば、書き換える」という条件を入れることで、対象外のコメントはそのままスキップすることができます。

条件付きVBAコード例

Sub ChangeSpecificAuthor()
    Dim I As Long
    Dim targetName As String
    Dim xNewName As String
    Dim xShortName As String
    
    If ActiveDocument.Comments.Count = 0 Then
        MsgBox "文書内にコメントがありません。", vbInformation, "お知らせ"
        Exit Sub
    End If
    
    targetName = InputBox("変更したい既存の作者名を入力してください。", "ターゲット作者名")
    xNewName = InputBox("変更後の作者名を入力してください。", "新しい作者名")
    xShortName = InputBox("変更後のイニシャルを入力してください。", "新しいイニシャル")
    
    If targetName = "" Or xNewName = "" Or xShortName = "" Then
        MsgBox "いずれかの入力が空白です。", vbInformation, "お知らせ"
        Exit Sub
    End If
    
    For I = 1 To ActiveDocument.Comments.Count
        If ActiveDocument.Comments(I).Author = targetName Then
            ActiveDocument.Comments(I).Author = xNewName
            ActiveDocument.Comments(I).Initial = xShortName
        End If
    Next I
End Sub

このように特定の文字列を条件に取り込むことで「○○さんのコメントだけ別の名前に変えたい」という細かいニーズにも対応できます。

VBAマクロが使えない場合の回避策

Wordの標準画面操作だけでは、既存コメントの作者名を上書きする機能が提供されていません。とはいえ、VBAが苦手な方やセキュリティ上の理由でマクロを実行できない環境もあるでしょう。その場合に取れる回避策も検討してみます。

コメントの再挿入で対応する

一番シンプルなのは、すでにあるコメントを削除し、新しいユーザー名で改めてコメントを挿入し直す方法です。文書全体のコメントが少ない場合や、どうしてもマクロが使えない環境の場合には仕方ありません。ただし、コメント数が多いと手間がかかります。

手動で再挿入すると、大量のコメントをつけ直す必要があり、時間や手間がかかる可能性があります。

新規文書へのコピー&ペースト

Word文書をまるごと新規ファイルにコピー&ペーストした場合、コメントの作者名は元の設定を引き継ぎます。大きな変更にはならないので、結局は作者名を修正しない限り意味がないケースがほとんどです。ただし、文書をまっさらな状態にしてからコメントを再設定する、というワークフローであれば一時的な回避策になるかもしれません。

Mac版WordとWindows版Wordの違いについて

VBAマクロの概念やオブジェクトモデルは基本的に共通ですが、Mac版はWindows版と比べて「オブジェクトの一部が実装されていない」「UIが微妙に違う」という点があります。コメントの作者名を変更するコードレベルでは大きな差はないものの、以下のような操作面の違いに注意するとよいでしょう。

項目 Windows版Word Mac版Word
VBEの起動方法 「開発」タブ →「Visual Basic」 「Word」→「環境設定」→「リボンとツールバー」で開発タブを有効化してから起動
マクロのセキュリティ ファイルを開く際に警告バーで有効化/無効化を選ぶ Mac OS側のセキュリティ設定によって実行がブロックされることがある
使用できないオブジェクト 比較的少ない 一部のActiveX制御などは非対応

コメント作者名の変更など基本的な操作は、Macでもほぼ同様に扱えるのはうれしい点です。

コメントの作者名を変更するときの注意点

コメントはドキュメントの「やり取り履歴」としての意味を持つ機能です。むやみに書き換えることはドキュメントの改ざんとみなされる可能性もあるため、社内規定やコンプライアンスの観点で注意が必要になるケースもあります。

社内ルールの確認

会社によっては「コメント履歴の修正」は禁じている場合もあります。たとえば監査が入った際に、改ざんの疑いをかけられるリスクがゼロとはいえません。どこまで書き換えてよいのか、上司や管理部門に確認してから実施するのが安全です。

正しい用途での利用

誤って別の人のコメントに自分の名前をつけるのは、トラブルのもとになります。リスクを理解したうえで、どうしても必要な場合にのみ実行するようにしましょう。また、後日「なぜ作者名が変わっているのか」などの疑問を招かないよう、変更の背景を関係者に共有しておくと安心です。

より高度なカスタマイズや相談先

今回ご紹介した例はコメントの作者名とイニシャルの変更だけですが、実はVBAを駆使すれば、コメントの内容の検索・置換や、特定の日時以降に作成されたコメントだけ抽出するなど、いろいろな応用が可能です。もし複雑な要件がある場合は、下記のようなコミュニティで質問してみるのもおすすめです。

Office Development – Microsoft Q&A

Microsoft公式のQ&Aサイトで、Officeに関する開発系の質問が多数寄せられています。英語の投稿も多いですが、日本語で質問しても回答がもらえる場合があります。新しいMac版WordでのVBAトラブルシューティングや、特殊な要件でのサンプルコードなど、実践的な情報を集めやすい場所です。

他の開発者向けフォーラム

Stack OverflowやQiitaなどでも、Word VBAに関するTIPSが公開されています。先人の知恵が詰まった場所なので、意外なヒントやサンプルコードを見つけられるかもしれません。

私も過去に「コメントの日付と内容を一括でログ化したい」というプロジェクトで、海外のフォーラムを参考にして事なきを得ました。日本語で見つからない場合でも、検索ワードを英語にすると追加の情報がヒットすることがあります。

まとめ: Mac版Wordのコメント作者名変更はVBAがカギ

私自身、Wordコメントの作者名問題に悩まされ、マクロで一括修正できたときの感動はなかなか忘れられません。最初は抵抗があるかもしれませんが、VBAに触れてみると意外と直感的に操作できます。もしマクロが難しいと感じる場合は、コメントの再挿入や他のソリューションを検討してみましょう。大事なのは、必要に応じて正しく使い分けることです。

最終的に「VBAってそんなに難しくないかも」と思えるようになれたのは、Wordの標準機能ではできないことを自由に操作できたからだと思います。ちょっと踏み込むだけで、いろいろ便利な世界が広がるんですよね。

コメント

コメントする