web-dev-qa-db-ja.com

MicrosoftOfficeツール-作成者名を完全に削除する

Microsoft Officeツールで問題が発生しました。今後作成されるすべてのドキュメントから、作成者名を完全に削除したいと思います。

Word、Excelなどは、コンピューターのログインユーザー名(JCTechieとしましょう)を取得し、作成者フィールドに追加し続けます。 [オプション]> [パーソナライズ]> [ユーザー名]に移動して、空白または誤った名前を作成しても、効果がありません。 .docまたは.xlxsファイル-詳細-作成者を右クリックすると、常に(JCTechie)と表示されます。著者の自動追加を停止したり、空白/エントリなしに変更したりする方法はありますか?ドキュメントを検査してすべてのデータを削除できることはわかっていますが、作成するすべてのドキュメントに対して行うのは面倒です。特に、それを忘れた場合はなおさらです。

Microsoftアカウントにサインインせずに、Office2013をローカルで使用しています。

5
JCTechie

私はOffice2016を使用していますが、空白にするか、すべてを(ユーザー名/初期フィールドから)削除すると、すべてのドキュメントを閉じたり開いたりしても機能し、ExcelからWordへ、およびWordからExcelへと運ばれます。

スペースの配置が機能しない場合は、Alt-127やAlt-255(numキーボードから、削除用のASCIIコード)などの非表示文字、またはUnicode ZERO WIDTH SPACE hex200Bなどの他の文字を入力してみてください。 10進数8203またはZEROWIDTH NON JOINER zwnj 0wnj hex 200C、decimal8204またはZEROWIDTH JOINER zwj 0wj hex 200D、decimal8205。

ありがとう。

1
VSRawat

VBAマクロを含む1つの解決策を考えることができるので、.docm.doc.xlsmなどのマクロを許可するOfficeドキュメント形式に制限されます。このソリューションは、PowerPointよりもWordファイルの方が完全です。

を使用して開かれるVBAエディターに追加されたWord用のVBAマクロ Alt+F11

Sub AutoClose()
    If ActiveDocument.Saved = False Then
        Dim oProp As DocumentProperty
        On Error Resume Next
        For Each oProp In ActiveDocument.BuiltInDocumentProperties
            oProp.Value = ""
        Next oProp
        Application.UserName = "x"
        ActiveDocument.Save
    End If
End Sub

説明すると、このマクロはドキュメントの終了時に実行されます。このプロパティの削除は機能せず、ログインしたアカウント名のみが使用されるため、すべての組み込みプロパティが削除され、「最終保存者」プロパティがxに設定されます。

マクロは、ドキュメントが変更された場合にのみ呼び出され、保存を実行します。これにより、「保存、保存しない、またはキャンセル」のダイアログが抑制されます(これは簡単に追加できます)。

マクロがいずれかのドキュメントに追加された場合、そのマクロはこのドキュメントに対してのみ機能します。すべてのWord文書で機能させるには、normal.dotまたはnormal.dotmのテンプレートに追加します。

参照:

このテンプレートのメカニズムは、Excelスプレッドシートには存在しません。 Excelの場合、すべての.xlsmファイルにマクロを個別に追加する必要があります。マクロ名も少し異なります:AutoCloseの代わりにAuto_Close

参考までに、たとえば記事 Excelが閉じたときにマクロを実行する– Auto_Close を参照してください。

1
harrymc