「フォントを変えたはずなのに、なぜか一部の文字だけゴシック体のまま……」そんな経験、あなたにもきっとあるはずです。あるいは、せっかくスタイルを設定し直したのに文書全体に反映されなくて途方に暮れた、なんてこともあるかもしれません。実はこの問題、Wordを長年使っているプロでも「なぜ?」と首をかしげる、かなりのくせ者なんです。
この記事では、Wordでフォント変更が反映されない原因をすべて洗い出し、初心者の方でも迷わず実行できる解決策を、順を追って丁寧に説明します。「なんとなく直った」ではなく、「なぜ直ったのか」まで理解できることを目指しているので、同じトラブルが二度と起きなくなりますよ。
- フォント変更が反映されない原因は大きく分けて6種類あり、それぞれに対応する解決策が存在する。
- 「文字コードの壁」「スタイルの上書き問題」「テンプレートのロック」という3大原因を理解するだけで、ほとんどのトラブルは解消できる。
- Windows 11・Microsoft 365最新環境(2026年4月現在)でも有効な、根本解決の手順を網羅している。
- そもそもWordのフォント変更はなぜ「反映されない」のか?
- 「一部の漢字だけフォントが変わらない」の正体は文字コードの壁だった!
- スタイルの上書き問題と直接書式のクリア方法
- テキストボックスや図形内の文字にフォントが反映されない理由
- Windows 11でフォントがWordの一覧に表示されない場合の対処
- デフォルトフォントを変えてもWordを再起動すると元に戻る問題の解決策
- フォントが変更できない・グレーアウトしている場合の対処
- スタイルを使わないと必ずレイアウトが崩れる理由と、今すぐスタイルに移行する最短手順
- 差し込み印刷の日付・数値が崩れる根本原因と、フィールドスイッチで一発解決する方法
- 変更履歴・共同編集で「誰が何を変えたかわからない」を防ぐ設定と運用ルール
- ファイル互換性・保護設定の実態と「安全に使う」ための判断基準
- Wordバージョン別・機能差異の早見表と移行時の注意点
- 今すぐコピペして使えるWordVBAコード集(情シス現場の実務レベル)
- Wordファイルが突然開けない・壊れた!緊急時の復旧手順マニュアル
- 現場の「あるある困った」実体験解決集
- ぶっちゃけこうした方がいい!
- Wordのフォント変更が反映されないに関する疑問解決
- まとめ
そもそもWordのフォント変更はなぜ「反映されない」のか?
Wordでフォントを変えたのに書体が変わらない、この現象には必ず原因があります。「バグじゃないの?」と思いたくなりますが、ほとんどのケースは仕様の組み合わせによって起きています。まずは全体像を把握しましょう。
フォント変更が反映されない主な原因は、次の6つに分類できます。
第1に、文字コード(Unicode)の壁です。日本語フォントに収録されていない漢字が文書に含まれているとき、Wordはそれを表示するために別のフォントを自動的に割り当てます。この「代替フォント」に切り替わった文字は、ユーザーがどのフォントを指定しても見た目が変わりません。
第2に、スタイルと直接書式の競合です。Wordには「段落スタイル」という書式の設定方法と、文字を選択して個別にフォントを変える「直接書式」の2種類があります。直接書式はスタイルより優先されるため、スタイルを変えても見た目が変わらないケースが起きます。
第3に、Normal.dotmテンプレートのロックです。Wordはすべての文書のベースとなる「Normal.dotm」というテンプレートを使います。このファイルが読み取り専用になっていたり、会社のポリシーで書き込みが制限されていると、フォントの変更が保存されません。
第4に、Wordのアドインによる干渉です。一部のアドイン(拡張機能)がフォント設定を自動的に元に戻すことがあります。会社のWordに入っている業務用アドインなどが原因になっていることも少なくありません。
第5に、フォントが一部の文字種にしか対応していないことです。日本語フォントの中には、日本語(ひらがな・カタカナ・常用漢字)はカバーしているけれど、中国語の漢字や特殊記号は収録していないものがあります。そのような文字は、指定したフォントで表示できないため、自動的にフォールバック(代替フォント)が適用されます。
第6に、Windows 11でフォントが非表示設定になっていることです。Windows 11では初期状態で非表示に設定されているフォントがあり、それらはWordの一覧に出てきません。インストール済みなのにWordで選べない、というトラブルの原因になります。
「一部の漢字だけフォントが変わらない」の正体は文字コードの壁だった!
JIS規格とUnicodeの深い溝
「你」や「圳」といった中国語の漢字、あるいは普通の漢字なのに書体が変わらない文字が出てきたことはないでしょうか? これは文字コードの仕組みが関係しています。
コンピュータの中で文字は「番号」として管理されています。日本で長年使われてきたJIS(日本工業規格)の文字コードには、約6,000文字の漢字が収録されています。一方、現代のコンピュータが採用しているUnicode(ユニコード)には、日本語・中国語・韓国語・アラビア語など世界中の文字が13万文字以上収録されています。
Wordは現在Unicodeベースで動いているため、JIS規格の範囲を超えた漢字も入力・表示できます。ところが、多くの日本語フォントはJIS規格の漢字しか収録していません。フォントに収録されていない文字は、そのフォントでは表示できないため、Wordが自動的に別のフォント(ゴシック体など)で代替表示するのです。これが「一部の漢字だけフォントが変わらない」という謎の正体です。
代替表示が起きているかどうかを確認する方法
この現象が起きているかどうかを確認するには、文書をテキスト形式で保存してみるのが手っ取り早い方法です。Wordの「ファイル」メニューから「名前を付けて保存」を選び、ファイルの種類を「書式なし(*.txt)」にして保存を実行します。すると「ファイルの変換」ダイアログが現れ、フォントが代替表示されている文字が赤字で表示されます。「赤で示されたテキストは指定されたエンコードでは正しく保存されません」という警告が出れば、その文字がJIS規格外のUnicode文字であることが確定です。
代替表示の問題を解決するには?
根本的な解決策は、対象の文字をすべて収録しているフォントを選ぶことです。たとえば「Source Han Sans(源ノ角ゴシック)」や「Noto Sans CJK JP」などは、日中韓の漢字を広範囲に収録しているため、代替表示が起きにくいフォントです。Microsoft OfficeではMicrosoft 365サブスクリプションを使っている場合、クラウドフォントとして「游ゴシック」「BIZ UDゴシック」なども利用でき、こうした広範囲対応フォントを積極的に使うことをおすすめします。
また、そもそも中国語の漢字や稀少漢字を使う必要がある場合は、「MS明朝」「MSゴシック」のような古い日本語フォントではなく、収録文字数の多いフォントを最初から選ぶという意識が重要です。
スタイルの上書き問題と直接書式のクリア方法
スタイルと直接書式はどう違うのか?
Wordには2つの書式設定方法があります。ひとつは「スタイル」で、「見出し1」「本文」「タイトル」などのスタイルに書式をまとめて定義しておく方法です。もうひとつは「直接書式」で、テキストを選択してリボンのフォント欄やボールドボタンから直接変更する方法です。
問題は、直接書式はスタイルより優先されるという点です。たとえば「本文」スタイルのフォントを「游明朝」から「メイリオ」に変更しても、その段落に直接書式でフォントが「MSゴシック」に設定されていれば、スタイルを変えても画面の表示は変わりません。
直接書式が設定されているかを確認する
直接書式が設定されているかどうかは、スタイルの詳細情報から確認できます。Wordのホームタブにある「スタイル」の右下にある小さな矢印をクリックし、スタイルウィンドウ下部にある「スタイルの詳細情報」をクリックします。「追加の書式設定」に「フォントサイズ10pt」「下線」「文字色が赤」などと表示されていれば、その箇所に直接書式が設定されていて、スタイルの変更が反映されない原因になっています。
直接書式をクリアしてスタイルを正しく反映させる
解決方法は非常にシンプルです。対象のテキストを選択した状態で、書式のクリアショートカットを実行するだけです。
段落書式のクリアには
Ctrl + Q
を使います。文字書式のクリアには
Ctrl + Space
を使います。どちらが設定されているか分からない場合は両方試してください。これにより、直接書式だけが消えてスタイルの設定が正しく反映されます。スタイルそのものは残るため、設定し直す手間はありません。
「自動的に更新する」設定で予防する
同じトラブルを繰り返さないための設定もあります。Wordのスタイル一覧から変更したいスタイルを右クリックして「変更」を選び、ダイアログ下部の「自動的に更新する」にチェックを入れて「OK」を押します。この設定をオンにすると、文書内でそのスタイルが適用されている箇所のいずれかを編集したとき、同じスタイルが適用されているすべての箇所に自動的に反映されます。これにより、スタイルと実際の表示がずれるという問題を予防できます。
テキストボックスや図形内の文字にフォントが反映されない理由
ホームタブのフォント変更が効かない場所がある
「ホームタブでフォントを変えたのに、テキストボックスや図形の中の文字には反映されない……」という悩みは、Wordユーザーの間でとても多いです。これはWordの仕組み上、避けられないことです。
Wordのホームタブにあるフォント設定は、あくまでも本文のデフォルトフォントを変えるだけです。テキストボックス、図形内のテキスト、ワードアートなどは、それぞれ独立したフォント設定を持っており、本文のフォントとは別に管理されています。
ページ設定からフォントを統一する方法
この問題を根本から解決するには、ページ設定ダイアログからフォントを設定する方法が効果的です。Wordの「レイアウト」タブをクリックし、「ページ設定」グループの右下にある小さな矢印をクリックしてダイアログを開きます。「文字数と行数」タブの右下にある「フォントの設定」ボタンをクリックすると、フォントダイアログが開きます。ここで希望のフォントを設定して「OK」を押し、続けてページ設定ダイアログの「OK」も押します。
この操作をすることで、本文はもちろん、テキストボックスや図形の中に入力する文字も含めて、文書全体のフォントが統一されます。「フォントもページ設定のひとつ」と覚えておくと忘れにくいですね。
あいさつ文などの自動挿入テキストが元のフォントに戻る場合の対処
Wordの「挿入」タブから「あいさつ文」を自動挿入したとき、挿入された文章だけが元の「游明朝」などに戻ってしまうことがあります。これは挿入されたテキストが独自のスタイル情報を持っているためです。この場合は、戻ってしまった部分を選択して「すべての書式のクリア」ボタン(ホームタブのフォントグループ内にある「Aに消しゴム」のアイコン)をクリックするだけで、ページ設定で指定したフォントに揃います。
Windows 11でフォントがWordの一覧に表示されない場合の対処
Windows 11の「非表示フォント」機能を知っていますか?
Windows 11には、インストール済みのフォントでもアプリに表示しない「非表示フォント」機能があります。これはフォントの一覧が増えすぎて選びにくくなることを防ぐための機能ですが、使いたいフォントが一覧に出てこないというトラブルの原因にもなります。
フォントを有効化するには、スタートメニューから「設定」を開き、「個人用設定」→「フォント」と進みます。「レガシフォントコントロールパネルインターフェイス」をクリックするとフォント一覧が開きます。一覧の中でアイコンが半透明になっているフォントが非表示状態です。そのフォントを右クリックして「表示」をクリックすれば、Wordのフォント一覧に表示されるようになります。
フォントが正しく表示されているか詳細表示で確認
フォント一覧を「詳細」表示に切り替えると、各フォントの表示/非表示の状態が文字で確認できます。「表示」→「詳細」と操作するだけで、どのフォントがどの状態なのかが一目でわかるようになります。特に会社のPCでWindowsの管理者が一括設定している場合、この方法で確認してみてください。
デフォルトフォントを変えてもWordを再起動すると元に戻る問題の解決策
Normal.dotmが書き込み禁止になっていないか確認する
「デフォルトフォントを変えて『すべての文書』に設定したのに、Wordを再起動するとまたCalibriや游明朝に戻ってしまう」というケースはとても多いです。この場合、原因のほとんどはNormal.dotmテンプレートが読み取り専用になっていることです。
確認方法はWindowsのエクスプローラーの検索ボックスで「Normal.dotm」と入力して検索し、見つかったファイルを右クリックして「プロパティ」を開きます。「全般」タブで「読み取り専用」にチェックが入っていたら外し、「セキュリティ」タブで自分のユーザーに「書き込み」権限があるかを確認します。会社のPCでは管理者権限がないと変更できない場合があるため、社内のIT担当者に相談が必要なこともあります。
アドインがフォント設定を上書きしている可能性
Normal.dotmに問題がないのにフォント変更が元に戻る場合は、Wordのアドインが原因かもしれません。Wordの「ファイル」→「オプション」→「アドイン」と進み、アドインの一覧を確認します。不要なアドインのチェックを外して無効化した後、フォントのデフォルト設定をもう一度やり直してみてください。設定が保存されるようになったら、必要なアドインだけを再度有効にします。
アドインを無効化する手順
- 「ファイル」→「オプション」→「アドイン」をクリックする。
- 「管理」ボックスでアドインの種類(COMアドイン、Wordアドインなど)を選び「設定」または「移動」をクリックする。
- 不要なアドインのチェックを外して「OK」をクリックする。
- アドインを無効にした状態でデフォルトフォントを設定し直し、Wordを再起動して設定が維持されるか確認する。
- 問題のアドインが特定できたら、そのアドイン以外を再度有効化する。
フォントが変更できない・グレーアウトしている場合の対処
文書の保護・編集制限が設定されていないか確認
フォントの変更自体ができない(グレーアウトしている)場合、文書に編集制限がかかっている可能性があります。Wordの「校閲」タブを開き、「編集の制限」ボタンをクリックして確認します。「編集の制限」サイドパネルが開き、「書式設定の制限」にチェックが入っている場合、指定されたスタイル以外の書式変更が制限されています。「保護の停止」ボタンをクリックしてパスワードを解除すれば、フォントの変更が可能になります。
他社から受け取ったWordファイルや、フォーム入力用に作られたWordファイルでよく起きるケースです。パスワードが分からない場合は、文書の作成者に確認する必要があります。
Officeの更新・修復で解決することもある
上記の原因をすべて確認しても解決しない場合は、Microsoft Officeの更新や修復を試みてください。古いバージョンのWordにはフォント関連のバグが含まれている場合があり、最新の更新プログラムを適用することで解消することがあります。Wordの「ファイル」→「アカウント」→「更新オプション」から「今すぐ更新」をクリックして最新の状態にしましょう。それでも解決しない場合は、コントロールパネルから「Microsoft Office」を選択して「修復」を実行します。
スタイルを使わないと必ずレイアウトが崩れる理由と、今すぐスタイルに移行する最短手順
この手順はWord 2019/Microsoft 365(Windows)を基準にしています。
ぶっちゃけ言います。フォント変更が「反映されない」問題の本質的な原因の8割は、「スタイルを使わずに直接書式設定している」ことです。これ、15年以上現場でサポートしてきた実感からくる話なんですよね。
直接書式設定とは何か、もう一度根本から整理しましょう。Wordには「書式の適用方法」が2層あります。第1層がスタイル(Style)、第2層が直接書式(Direct Formatting)です。
Wordの内部構造はXMLベースの.docxフォーマットで管理されています。ファイルを実はZIPとして展開すると中に
word/document.xml
というファイルがあり、テキストの隣に書式情報が記述されています。スタイルで設定した書式は
<w:pStyle w:val="Heading1"/>
のようにスタイル名の参照として記録されます。一方、直接書式は
<w:rPr><w:rFonts w:ascii="MS Gothic"/></w:rPr>
のように文字レベルで個別に書き込まれます。
直接書式は「上書きレイヤー」として機能するため、スタイルを変えても直接書式が残っている限り、見た目は変わりません。これが「フォントを変えたのに変わらない」の正体のひとつです。そしてこの直接書式は知らないうちに積み重なる。コピペをするたびに、太字にするたびに、フォントをちょっと変えるたびに積み重なっていきます。
スタイルを使わないとどんな地獄が待っているか
私が現場で見てきた典型的なケースを話します。「直接書式でゴリゴリ作った報告書テンプレート」を共有フォルダに置いておくと、3ヶ月後には誰かが別のPCで開いたときにフォントがバラバラになります。その理由は、直接書式で「游ゴシック 12pt」を指定していても、そのフォントがインストールされていないPCではWordが代替フォントを自動表示するからです。スタイルで管理していれば、フォントの差異をスタイル定義側で一括調整できますが、直接書式では一文字一文字直すしかありません。
また、目次の自動生成はスタイル「見出し1」「見出し2」との連携が前提です。直接書式でいくらフォントを大きくして太字にしても、Wordはそれを「見出し」として認識しないため、
リボン > 参考資料タブ > 目次グループ > 目次
から自動目次を挿入しても白紙になります。ナビゲーションウィンドウ(
リボン > 表示タブ > 表示グループ > ナビゲーションウィンドウ
)も見出しスタイルがないと機能しません。
今すぐスタイルへ移行する最短手順
既存の直接書式まみれの文書を、できるだけ壊さずにスタイル管理に移行する手順を紹介します。
- 文書全体を選択(
Ctrl+A)し、
Ctrl+Q(段落書式クリア)→
Ctrl+Space(文字書式クリア)の順に実行して直接書式をリセットする。
- ホームタブのスタイルギャラリーから「標準」スタイルを右クリックし「変更」を選び、希望のフォント・サイズに設定して「このテンプレートを使用している新規文書」を選択して保存する。
- 見出しとなる段落を選択して「見出し1」「見出し2」スタイルを適用し、その後で見出しスタイルを右クリック→「変更」でフォントやサイズを好みに合わせる。
- 最後に
リボン > デザインタブ > ドキュメントの書式設定グループ > 既定に設定をクリックして保存する。
⚠ Word for Macをお使いの場合スタイルの変更手順はほぼ同じですが、「このテンプレートを使用している新規文書」という選択肢の位置がダイアログ下部ではなく上部にある場合があります(Word for Mac バージョン16.x系)。また、Mac版はWindowsのNormal.dotmと互換性がないため、Macで作ったテンプレートをWindowsで開くとスタイルが崩れることがあります。社内でMacとWindowsを混在使用している場合は、必ずWindows版Wordでテンプレートを作成・管理してください。これ、公式ドキュメントにはあまり書いてないんですが、現場では何度も踏んだ地雷なんですよ。
差し込み印刷の日付・数値が崩れる根本原因と、フィールドスイッチで一発解決する方法
この手順はWord 2019/Microsoft 365(Windows)を基準にしています。
差し込み印刷でExcelの日付データを差し込んだら「45315」みたいな謎の数字が出てきた経験はありませんか?これ、現場で初めて踏んで初めてわかる罠なんですよ。原因はWordとExcelのデータ受け渡し方式にあります。
なぜ日付が数字になるのかOLE DBとDDEの違い
Wordが差し込み印刷でExcelに接続するとき、デフォルトではOLE DB(Object Linking and Embedding Database)という方式を使います。OLE DBはデータを「生の数値」として受け取るため、Excelで「2025/04/28」と表示されていても、Wordには「45775」(Excelが内部で持っているシリアル値)として渡されます。
対処法は2つあります。ひとつは接続方式をDDE(Dynamic Data Exchange)に切り替える方法、もうひとつは差し込みフィールドに書式スイッチを追加する方法です。DDE切り替えはWordの設定変更が必要で全フィールドに効く一方、スイッチ追加はフィールドごとに個別設定できる精度の高い方法です。
フィールドスイッチで日付・数値を思い通りに表示する
差し込みフィールドに書式スイッチを追加する手順を説明します。まず差し込みフィールドをクリックして選択し、
Shift+F9
を押してフィールドコードを表示します。
{ MERGEFIELD 契約日 }
のようなコードが見えるはずです。ここで
\@
スイッチ(日付)または
\#
スイッチ(数値)を末尾に追加します。
日付を「2025年4月28日」形式にするには、フィールドを次のように変更します。
{ MERGEFIELD 契約日 \@ "yyyy年M月d日" }
金額を「¥1,000,000」形式にするには次のようにします。
{ MERGEFIELD 金額 \# "¥#,##0" }
スイッチを追加したらフィールドの上で
F9
キーを押して更新します。
Shift+F9
でフィールドコードを再度非表示にして結果を確認してください。
⚠ スイッチで使う「M(月)」は必ず大文字で書いてください。小文字の「m」は「分(minute)」を意味します。たとえば
\@ "yyyy/mm/dd"と書くと「2025/04/28」ではなく「2025/00/28」のようになってしまいます。これは何度見ても混乱するポイントで、世界中のWordユーザーが踏んでいる罠です。
IFフィールドで動的に内容が変わる差し込み文書を作る
差し込み印刷でよく求められるのが「ある条件のとき文章を変えたい」という要望です。たとえば「会員ランクがゴールドなら特典の説明文を挿入、シルバーなら別の文章を挿入」といったケースです。これはWordのIFフィールドで実現できます。
リボン > 差し込み文書タブ > 文章入力とフィールドの挿入グループ > ルールの設定 > もし...ならば...そうでなければ...
から挿入できます。直接コードを書く場合は
Ctrl+F9
でフィールドの括弧を挿入し、次のように記述します。
{ IF { MERGEFIELD ランク } = "ゴールド" "ゴールド会員限定の特典が適用されます。" "通常の特典が適用されます。" }
フィールドコードを記述したら
Alt+F9
で全フィールドコードを非表示に戻し、
Ctrl+A
で全選択後
F9
で全フィールドを更新してから差し込み結果をプレビューしてください。
変更履歴・共同編集で「誰が何を変えたかわからない」を防ぐ設定と運用ルール
この手順はWord 2019/Microsoft 365(Windows)を基準にしています。
変更履歴がらみのトラブルは本当に多いんですよ、これが。私が現場でサポートした中で「変更履歴が知らないうちにオンになっていて、承認していない変更が文書に残ったまま印刷・配布された」という深刻なインシデントを何件も見てきました。
変更履歴が「知らないうちにオン」になっている落とし穴
変更履歴のオン・オフは
リボン > 校閲タブ > 変更履歴グループ > 変更履歴の記録
で確認できます。ここがオンになっていると、ユーザーが何も意識しなくてもすべての編集が変更として記録されます。
厄介なのは、「変更の表示」を「なし」にすると変更履歴が記録されていることに気づかない点です。見た目は普通の文書に見えますが、内部には変更履歴データがびっしり残っています。文書を他者に送る前に必ず
リボン > 校閲タブ > 変更履歴グループ > 変更の表示
を「すべての変更履歴/コメント」にして確認することを習慣にしてください。
「著者名が全員同じ」問題を防ぐ著者名設定
変更履歴に表示される著者名は、Wordのユーザー情報から取得されます。共用PCや、セットアップ時に適当な名前を入れたPCでは、全員の変更が同じ名前で記録されてしまい「誰が何を変えたかわからない」状態になります。
設定場所は
リボン > ファイルタブ > オプション > 全般 > ユーザー名とイニシャル
です。ここで本名を設定すれば、変更履歴に正しい著者名が表示されます。全社員のPCで統一設定されているかを確認するのも情シスの仕事ですが、VBAでのチェックスクリプトを後述しますので活用してください。
SharePoint・OneDrive共同編集とローカル保存の使い分け判断
Microsoft 365環境ではSharePointやOneDriveでのリアルタイム共同編集が使えますが、これとローカル保存の使い分けは重要です。
| 状況 | 推奨する保存方法 | 理由 |
|---|---|---|
| 複数人でリアルタイムに編集 | SharePoint / OneDrive(自動保存オン) | 同時編集の競合を自動解決できる |
| VBAマクロが含まれる文書 | ローカル保存(.docm)推奨 | OneDrive上でVBAが誤動作するケースがある |
| 差し込み印刷の本文ファイル | ローカルまたはネットワークドライブ | OneDriveパスはデータソース接続が切れやすい |
| 変更履歴管理が必要な契約書類 | SharePoint(バージョン管理オン) | 誰がいつ変更したか履歴が自動保存される |
特に注意してほしいのは、OneDrive上に保存した差し込み印刷の本文ファイルは、データソース(Excelファイル)へのパスが絶対パスで記録されるため、別のPCで開くとデータソースが見つからないというエラーになることが多い点です。差し込み印刷ファイルはローカルまたは社内ネットワークドライブに保存することを強く推奨します。
ファイル互換性・保護設定の実態と「安全に使う」ための判断基準
この手順はWord 2019/Microsoft 365(Windows)を基準にしています。
.docx / .doc / .odt の互換性の実態
.docと.docxは「どちらもWordファイル」ではなく、まったく構造が異なるファイル形式です。.docはバイナリ形式(Word 97-2003形式)で、.docxはXMLをZIPで圧縮したOpen XML形式です。
| 項目 | .docx(推奨) | .doc(旧形式) | .odt(LibreOffice等) |
|---|---|---|---|
| ファイルサイズ | 比較的小さい | 大きくなりやすい | 同等程度 |
| スタイル互換性 | 高い | 一部崩れる | 崩れやすい |
| VBAマクロ | 保存不可(.docm必要) | 保存可能 | 非対応 |
| 破損時の回復 | XMLを直接編集可能 | バイナリのため困難 | XML編集可能 |
| Word 2010以前での表示 | 互換パック必要 | ネイティブ対応 | 変換後表示可能 |
.docから.docxへ安全に変換するには、
リボン > ファイルタブ > 情報 > 変換
から実行します。この操作はファイルを.docxとして上書き変換するため、必ず事前にバックアップを取ってから実行してください。変換後は互換モード(タイトルバーに「互換モード」と表示)が解除され、最新機能が使えるようになります。
ドキュメント保護とドキュメント検査の正しい使い方
Wordのパスワード保護には2種類あります。ひとつは「ファイルを開くためのパスワード」(
ファイル > 情報 > 文書の保護 > パスワードを使用して暗号化
)で、もうひとつは「編集制限のパスワード」(
校閲タブ > 編集の制限
)です。前者は暗号化を伴うため強力ですが、パスワードを忘れると原則として自力では開けません。後者は編集操作のみ制限するもので、ファイル自体は開けます。
配布前に個人情報を確認・削除するにはドキュメント検査を使います。
ファイル > 情報 > 問題のチェック > ドキュメントの検査
から実行すると、変更履歴、コメント、非表示テキスト、個人情報(著者名・会社名など)を一括で検出・削除できます。外部に配布する文書はこの操作を必ず実行することを社内ルールにすることをおすすめします。
⚠ Word for Macの場合ドキュメント検査の項目数はWindows版より少なく、一部の個人情報(プリンタ情報など)はMac版では検査・削除できません。Mac環境で作成した文書を外部配布する場合は、Windows環境でも検査することを推奨します。
Wordバージョン別・機能差異の早見表と移行時の注意点
「この機能、うちのWordにはないんですが…」というサポート問い合わせは日常茶飯事です。Microsoft 365(サブスクリプション版)と永続ライセンス版(Word 2019・2021・2024)では使える機能に差があります。
| 機能名 | Microsoft 365 | Word 2021 | Word 2019 | Word 2016 | Word for Mac(365) |
|---|---|---|---|---|---|
| Copilot(AI文章生成) | 対応(月次チャネル) | 非対応 | 非対応 | 非対応 | 対応 |
| リアルタイム共同編集 | 対応 | 対応(OneDrive保存時) | 一部対応 | 非対応 | 対応 |
| 組み込みクラウドフォント | 対応(自動ダウンロード) | 対応 | 非対応 | 非対応 | 一部対応 |
| 差し込み印刷のDDE接続 | 設定変更で可能 | 設定変更で可能 | 設定変更で可能 | 設定変更で可能 | 非対応(Mac版はDDE未サポート) |
| アクセシビリティチェッカー | 高精度版 | 標準版 | 標準版 | 基本版 | 対応 |
注意Microsoft 365の「月次チャネル」と「半期エンタープライズチャネル」では搭載機能が異なります。Copilot等の最新AI機能は月次チャネルで先行提供され、半期エンタープライズチャネルには数ヶ月遅れで提供されます。企業の一斉更新環境では意図せず半期チャネルが適用されているケースがあるため、機能が使えない場合はチャネル設定を確認してください。
古いWordで作った文書を新しいWordで開いたときに起きる問題
Word 2003以前(.doc形式)で作成した文書をWord 2019以降で開くと、フォントや段落間隔が変わって見えることがあります。主な原因は次のとおりです。
まず行間の変化Word 2007からデフォルト行間が「1行」から「複数行・1.15」に変更され、旧文書を互換モードなしで開くと行間が広がります。次に既定フォントの変化Word 2007でMS明朝→Calibri/Cambria、Word 2016で游明朝/游ゴシックに変更されており、旧文書の標準スタイルが影響を受けることがあります。そして表の罫線スタイルの変化古い.docで使われていた罫線スタイルが.docxに変換した際に標準スタイルに置き換えられることがあります。
今すぐコピペして使えるWordVBAコード集(情シス現場の実務レベル)
⚠ 重要すべてのVBAコードを実行する前に、対象のWordファイルを必ずバックアップしてください。VBAの実行は取り消しができない操作を含む場合があります。実行前に「名前を付けて保存」でバックアップファイルを作成してから実行してください。また、VBA実行中は他のWordファイルを不用意に開かないようにしてください。
VBAを使う前に知っておくべき「危険地帯」3つ
コードを紹介する前に、必ず読んでください。これを知らずにコードを書くと、現場で大事故を起こします。
第1の危険地帯Document.Close や Application.Quit の前に保存処理が抜けるとデータが消えます。Wordは保存確認ダイアログを出す仕様ですが、バックグラウンド実行や引数設定によってはダイアログを表示せずに閉じることがあります。必ず
Document.Save
または
Document.SaveAs2
を Close の直前に呼び出してください。
第2の危険地帯Selection を多用するコードはカーソル位置に依存して誤動作します。Selectionはユーザーがどこをクリックしているかによって動作が変わります。コードで文字列を操作するときは必ず
Range
オブジェクトを使ってください。RangeはWordの特定の範囲を直接指定するため、カーソル位置に影響されません。
第3の危険地帯ActiveDocument を前提にしたコードは、複数の文書が開いている環境で意図しない文書を操作します。操作対象の文書は明示的に変数で受け取るか、
Documents("ファイル名.docx")
と明示して指定してください。
コード1直接書式を一括クリアしてスタイルを正しく反映させるマクロ
' ========================================
' マクロ名ClearAllDirectFormatting
' 用途文書内の全テキストの直接書式をクリアしてスタイルを正しく反映させる
' 動作確認済みWord 2016 / 2019 / 2021 / Microsoft 365(月次チャネル)
' 動作するバージョンWord 2013以降
' 動作しないバージョンWord 2010以前(Range.ClearFormattingの挙動が異なる)
' Mac対応対応(Word for Mac 16.x系で動作確認済み)
' 実行方法開発タブ>マクロ>ClearAllDirectFormattingを選択して実行
' 注意事項実行前に必ずファイルをバックアップすること。スタイル設定自体は変更されません。
' ========================================
Sub ClearAllDirectFormatting()
Dim oDoc As Document
Dim oRange As Range
' 危険地帯対策ActiveDocumentではなく明示的に変数で受け取る
Set oDoc = ActiveDocument
' 操作前の確認ダイアログ
If MsgBox("文書全体の直接書式をクリアします。" & vbCrLf & _
"この操作は元に戻せる場合がありますが、" & vbCrLf & _
"事前にバックアップを取ってから実行することを推奨します。" & vbCrLf & vbCrLf & _
"続行しますか?", vbYesNo + vbQuestion, "確認") = vbNo Then
Exit Sub
End If
On Error GoTo ErrorHandler
' 危険地帯対策Selectionではなく、Rangeオブジェクトを使用する
Set oRange = oDoc.Content
' 段落書式(インデント・行間など)の直接書式をクリア
oRange.ParagraphFormat.Reset
' 文字書式(フォント・太字・色など)の直接書式をクリア
' ClearFormattingはスタイルを維持したまま直接書式のみ削除する
oRange.Font.Reset
MsgBox "直接書式のクリアが完了しました。" & vbCrLf & _
"スタイルの設定内容が正しく表示されるようになりました。", _
vbInformation, "完了"
' 後片付け
Set oRange = Nothing
Set oDoc = Nothing
Exit Sub
ErrorHandler:
MsgBox "エラーが発生しました。" & vbCrLf & _
"エラー番号" & Err.Number & vbCrLf & _
"エラー内容" & Err.Description, vbCritical, "エラー"
Set oRange = Nothing
Set oDoc = Nothing
End Sub
コード2文書内のスタイル使用状況を診断して一覧表示するマクロ
' ========================================
' マクロ名DiagnoseStyleUsage
' 用途文書内で使用されているスタイルの一覧と段落数を新規文書に出力する
' 動作確認済みWord 2016 / 2019 / 2021 / Microsoft 365(月次チャネル)
' 動作するバージョンWord 2013以降
' 動作しないバージョンWord 2007以前(Documents.Addの動作が異なる場合あり)
' Mac対応対応(Word for Mac 16.x系で動作確認済み)
' 実行方法開発タブ>マクロ>DiagnoseStyleUsageを選択して実行
' 注意事項大きな文書(100ページ超)では処理に数十秒かかる場合があります。
' ========================================
Sub DiagnoseStyleUsage()
Dim oSourceDoc As Document
Dim oReportDoc As Document
Dim oPara As Paragraph
Dim oRange As Range
Dim dicStyles As Object ' Scripting.Dictionaryの代替としてCollectionを使用
Dim colStyleNames As Collection
Dim colStyleCounts As Collection
Dim sStyleName As String
Dim i As Long
Dim bFound As Boolean
On Error GoTo ErrorHandler
' 危険地帯対策操作対象を変数で明示
Set oSourceDoc = ActiveDocument
' スタイル名と使用回数を格納するコレクション
Set colStyleNames = New Collection
Set colStyleCounts = New Collection
' 全段落をループしてスタイル名を収集
For Each oPara In oSourceDoc.Paragraphs
sStyleName = oPara.Style.NameLocal
bFound = False
' 既に収集済みのスタイルかチェック
For i = 1 To colStyleNames.Count
If colStyleNames(i) = sStyleName Then
' カウントを1増やす(Collectionは値変更できないため一旦削除して追加)
Dim nCount As Long
nCount = colStyleCounts(i)
colStyleCounts.Remove i
colStyleCounts.Add nCount + 1, , i, i
bFound = True
Exit For
End If
Next i
' 新しいスタイルであればコレクションに追加
If Not bFound Then
colStyleNames.Add sStyleName
colStyleCounts.Add 1
End If
Next oPara
' 結果を新規文書に出力
Set oReportDoc = Documents.Add
' 危険地帯対策新規文書のRangeを明示して操作
Set oRange = oReportDoc.Content
oRange.Text = ""
' タイトル行を入力
With oReportDoc.Paragraphs(1).Range
.Text = "スタイル使用状況診断レポート" & vbCrLf & _
"対象ファイル" & oSourceDoc.Name & vbCrLf & _
"生成日時" & Now() & vbCrLf & vbCrLf & _
"スタイル名" & vbTab & "使用段落数" & vbCrLf
' 各スタイルの使用状況を出力
For i = 1 To colStyleNames.Count
.InsertAfter colStyleNames(i) & vbTab & colStyleCounts(i) & " 段落" & vbCrLf
Next i
End With
MsgBox "診断レポートを新規文書に出力しました。" & vbCrLf & _
"直接書式が多い場合は「標準」スタイルの使用段落数が多くなります。", _
vbInformation, "診断完了"
' 後片付け
Set oRange = Nothing
Set oReportDoc = Nothing
Set oSourceDoc = Nothing
Set colStyleNames = Nothing
Set colStyleCounts = Nothing
Exit Sub
ErrorHandler:
MsgBox "エラーが発生しました。" & vbCrLf & _
"エラー番号" & Err.Number & vbCrLf & _
"エラー内容" & Err.Description, vbCritical, "エラー"
Set oRange = Nothing
Set oReportDoc = Nothing
Set oSourceDoc = Nothing
End Sub
コード3差し込みフィールドを一括更新するマクロ
' ========================================
' マクロ名UpdateAllMergeFields
' 用途文書内のすべてのフィールドコード(差し込みフィールド含む)を一括更新する
' 動作確認済みWord 2016 / 2019 / 2021 / Microsoft 365(月次チャネル)
' 動作するバージョンWord 2013以降
' 動作しないバージョンWord 2010以前(Fields.Updateの動作が一部異なる場合あり)
' Mac対応対応(Word for Mac 16.x系で動作確認済み)
' 実行方法開発タブ>マクロ>UpdateAllMergeFieldsを選択して実行、またはAlt+F8
' 注意事項差し込み印刷の本文ファイルでデータソースが接続されていない場合は
' エラーになります。データソース接続後に実行してください。
' ========================================
Sub UpdateAllMergeFields()
Dim oDoc As Document
Dim oField As Field
Dim nUpdated As Long
Dim nError As Long
On Error GoTo ErrorHandler
' 危険地帯対策操作対象を変数で明示
Set oDoc = ActiveDocument
nUpdated = 0
nError = 0
' 全フィールドをループして更新
For Each oField In oDoc.Fields
On Error Resume Next ' 個別フィールドのエラーは無視して続行
oField.Update
If Err.Number = 0 Then
nUpdated = nUpdated + 1
Else
nError = nError + 1
Err.Clear
End If
On Error GoTo ErrorHandler
Next oField
' 更新後に上書き保存
' 危険地帯対策Close前に必ずSaveを呼ぶ(今回はCloseしないが習慣として)
oDoc.Save
MsgBox "フィールドの一括更新が完了しました。" & vbCrLf & _
"更新成功" & nUpdated & " フィールド" & vbCrLf & _
"更新失敗" & nError & " フィールド(データソース未接続など)", _
vbInformation, "完了"
Set oDoc = Nothing
Exit Sub
ErrorHandler:
MsgBox "予期しないエラーが発生しました。" & vbCrLf & _
"エラー番号" & Err.Number & vbCrLf & _
"エラー内容" & Err.Description, vbCritical, "エラー"
Set oDoc = Nothing
End Sub
コード4フォルダ内の複数Wordファイルを一括でPDF出力するマクロ
' ========================================
' マクロ名BatchExportToPDF
' 用途指定フォルダ内の全.docxファイルを同フォルダにPDF一括出力する
' 動作確認済みWord 2016 / 2019 / 2021 / Microsoft 365(月次チャネル)
' 動作するバージョンWord 2010以降(ExportAsFixedFormat は Word 2007から対応)
' 動作しないバージョンWord 2003以前(ExportAsFixedFormat API未サポート)
' Mac対応非対応(FileSystemObjectがMac版VBAでは動作しない。Mac版はAppleScriptを使用すること)
' 実行方法開発タブ>マクロ>BatchExportToPDFを選択して実行
' 注意事項処理対象フォルダを事前にダイアログで選択します。
' 処理中は他の操作をしないでください。大量ファイルは時間がかかります。
' 実行前に対象フォルダのバックアップを必ず取ること。
' ========================================
Sub BatchExportToPDF()
Dim oFSO As Object ' FileSystemObject
Dim oFolder As Object ' Folder
Dim oFile As Object ' File
Dim oDoc As Document
Dim sTargetFolder As String
Dim sPDFPath As String
Dim nSuccess As Long
Dim nFail As Long
Dim sFailList As String
On Error GoTo ErrorHandler
' フォルダ選択ダイアログ
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "PDF出力するWordファイルが入ったフォルダを選択してください"
.AllowMultiSelect = False
If .Show = False Then
MsgBox "キャンセルされました。", vbInformation
Exit Sub
End If
sTargetFolder = .SelectedItems(1)
End With
' FileSystemObjectを使ってフォルダを操作(Mac非対応の理由)
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = oFSO.GetFolder(sTargetFolder)
nSuccess = 0
nFail = 0
sFailList = ""
' フォルダ内の全ファイルをループ
For Each oFile In oFolder.Files
' .docxファイルのみ処理(一時ファイル「~$」は除外)
If LCase(Right(oFile.Name, 5)) = ".docx" And Left(oFile.Name, 2) <> "~$" Then
On Error Resume Next
' ファイルを開く(編集不可・非表示で開いてパフォーマンス向上)
Set oDoc = Documents.Open( _
FileName:=oFile.Path, _
ReadOnly:=True, _
Visible:=True)
If Err.Number <> 0 Or oDoc Is Nothing Then
nFail = nFail + 1
sFailList = sFailList & oFile.Name & " (オープン失敗)" & vbCrLf
Err.Clear
Else
' PDF出力先のパスを生成(同フォルダに同名で.pdf拡張子)
sPDFPath = sTargetFolder & "\" & _
Left(oFile.Name, Len(oFile.Name) - 5) & ".pdf"
' PDFとして出力
oDoc.ExportAsFixedFormat _
OutputFileName:=sPDFPath, _
ExportFormat:=wdExportFormatPDF, _
OpenAfterExport:=False, _
OptimizeFor:=wdExportOptimizeForPrint
If Err.Number = 0 Then
nSuccess = nSuccess + 1
Else
nFail = nFail + 1
sFailList = sFailList & oFile.Name & " (PDF出力失敗" & Err.Description & ")" & vbCrLf
Err.Clear
End If
' 危険地帯対策Close前に必ずSaveしない(ReadOnlyで開いているため不要)
' ただし通常文書のCloseではSaveを呼ぶことを習慣化すること
oDoc.Close SaveChanges:=wdDoNotSaveChanges
Set oDoc = Nothing
End If
On Error GoTo ErrorHandler
End If
Next oFile
' 結果報告
Dim sResult As String
sResult = "PDF一括出力が完了しました。" & vbCrLf & _
"成功" & nSuccess & " ファイル" & vbCrLf & _
"失敗" & nFail & " ファイル"
If sFailList <> "" Then
sResult = sResult & vbCrLf & vbCrLf & "失敗したファイル" & vbCrLf & sFailList
End If
MsgBox sResult, vbInformation, "完了"
' 後片付け
Set oFolder = Nothing
Set oFSO = Nothing
Exit Sub
ErrorHandler:
MsgBox "予期しないエラーが発生しました。" & vbCrLf & _
"エラー番号" & Err.Number & vbCrLf & _
"エラー内容" & Err.Description, vbCritical, "エラー"
If Not oDoc Is Nothing Then oDoc.Close SaveChanges:=wdDoNotSaveChanges
Set oDoc = Nothing
Set oFolder = Nothing
Set oFSO = Nothing
End Sub
Wordファイルが突然開けない・壊れた!緊急時の復旧手順マニュアル
【症状①】「Wordはこのファイルの内容を開けません」エラーで開かない
【原因の切り分け方】まず、ファイルサイズを確認してください。0バイトであればファイルが空で保存されており復旧は困難です。数KB以上あれば内部データが存在しています。次に、そのファイルが「~$ファイル名.docx」という一時ファイルを作成できているかを確認します(同フォルダに存在するか)。一時ファイルがあれば途中まで保存されたデータを回収できる可能性があります。
【復旧手順(軽度)】
- Wordを起動し、
ファイル > 開く > 参照から対象ファイルを選択する。
- 「開く」ボタンの右の▼をクリックし「開いて修復する」を選択する。これでWordが自動修復を試みる。
- 修復できた場合は即座に「名前を付けて保存」で別名保存する。
【復旧手順(重度XMLを直接修復する)】
- 対象の.docxファイルをコピーしてバックアップを作成する。
- コピーした.docxファイルの拡張子を.zipに変更する(Windowsのファイルの種類変更)。
- .zipファイルを右クリックして「すべて展開」または7-Zipなどで展開する。
- 展開したフォルダ内の
word/document.xmlをメモ帳(または Notepad++)で開く。
- 開いた瞬間に「開けない」または文字化けが多い場合は重度破損。XMLエラーが表示されたら何行目のエラーかメモしておく。
- エラー箇所付近の壊れたXMLタグを削除または修正し、ファイルを保存する。
- 修正したdocument.xmlを元の.zipフォルダ内の
word/フォルダに上書きする。
- .zipの拡張子を.docxに戻して開く。
【二度と起こさないための予防設定】Wordの「自動回復ファイルの保存間隔」を短く設定してください。
ファイル > オプション > 保存 > 次の間隔で自動回復用データを保存する
を「5分」に設定しておくと、クラッシュ時のデータロスを最小限に抑えられます。また、OneDriveやSharePointを使っている場合は「自動保存」がオンであることを確認してください。
【やってはいけないNG対処】壊れたファイルをいきなりダブルクリックで「開いて修復する」せずに何度も開こうとするのはNGです。開くたびに一時ファイルが上書きされ、回復できていたデータが消える可能性があります。また、「ファイルを修復してくれる」と謳う不審なオンラインサービスに原本をアップロードするのは、情報漏洩のリスクがあるため絶対に避けてください。
現場の「あるある困った」実体験解決集
あるある問題①コピペしたら別のフォントが混入してレイアウトが崩れた
【困った状況】
「他の文書から文章をコピーして貼り付けたら、貼り付けた部分だけフォントが違う書体になった。全体を選択してフォントを統一したはずなのに、なぜか一部だけ変わらない。」
【なぜこれが起きるのか】
WordのコピペはデフォルトでUnicodeのテキストだけでなく、RTF(リッチテキストフォーマット)情報も一緒に貼り付けます。RTFには元の文書で設定されていたフォント・サイズ・色などの直接書式情報がすべて含まれています。「貼り付け先のスタイルを使用する」ではなく「元の書式を保持する」で貼り付けると、元文書の直接書式がそのまま移植されます。さらに、前述の「直接書式はスタイルより優先される」という仕組みにより、後からフォントを統一しようとしても変わらない文字が生まれます。
【その場でできる応急処置】
- おかしいと思う段落を選択する。
-
Ctrl+Space(文字書式クリア)と
Ctrl+Q(段落書式クリア)を実行する。
- それでも変わらない場合は、ホームタブの「すべての書式をクリア」ボタン(Aに消しゴムのアイコン)をクリックする。
【根本解決の手順】
コピペするときの貼り付け方を変えてください。貼り付け後すぐに表示される「貼り付けのオプション」アイコンをクリックし、「テキストのみ保持」または「貼り付け先のスタイルを使用」を選んでください。あるいは最初から
Ctrl+Shift+V
で「形式を選択して貼り付け」ダイアログを開き「テキストのみ」で貼り付ける癖をつけると、フォント混入問題がほぼ発生しなくなります。
Word 2019の場合デフォルトの貼り付け動作を変更するには
ファイル > オプション > 詳細設定 > 切り取り、コピー、貼り付け
セクションで「他の文書からの貼り付け」を「貼り付け先の書式を使用する」に変更できます。Microsoft 365も同じ場所です。
【やってはいけないNG対処】「全体を選択してフォントを上から変更する」を繰り返すのはNG。直接書式の積み重ねがどんどん深くなるだけです。必ず「書式のクリア」を先に行ってからフォントを再設定してください。
【VBAで一発解決できる場合】前述の「ClearAllDirectFormatting」マクロを実行してください。コピペ由来の直接書式も一括クリアされます。
【情シス視点のひとこと】現場では「貼り付けは常にテキストのみ」をルールにしてしまうのが一番早いです。書式が必要なときだけ意識的にリッチテキストで貼る、という逆転の発想で運用すると、書式崩れのサポート件数が激減します。
あるある問題②差し込み印刷で宛名の敬称が正しく切り替わらない
【困った状況】
「Excelの顧客リストで『会社宛て御中』『個人宛て様』を使い分けたいのに、差し込みで全部『様』になってしまう。IFフィールドを使ったが正しく動かない。」
【なぜこれが起きるのか】
IFフィールドの比較式は文字列の完全一致で動作します。Excelのセルに「会社」と入力されていても、セル内に全角スペースや改行コードが混入していると「会社」と一致しないと判断されます。また、OLE DB接続ではExcelの数値セルが文字列として渡されないケースがあり、IFフィールドの比較が正しく機能しないことがあります。
【その場でできる応急処置】
-
Alt+F9でフィールドコードを表示し、IFフィールドの比較値が正しいか確認する。
- Excelのデータを開き、問題のセルに余分なスペースや改行コードが混入していないか確認する(
TRIM関数などでクリーニングする)。
- 差し込み印刷のデータソース接続方式をOLE DBからDDEに変えてみる(
ファイル > オプション > 詳細設定 > 全般セクションの「開くときにファイル形式の変換を確認する」をオン)。
【根本解決の手順】
IFフィールドの正しい書き方は次のとおりです。Excelの列名が「種別」で、値が「法人」のとき「御中」、それ以外は「様」とするには以下のように記述します。
{ IF { MERGEFIELD 種別 } = "法人" "御中" "様" }
それでも動かない場合は、Excelのデータ側の問題がほぼ確実です。ExcelでTRIM関数とCLEAN関数を適用したクリーニング済みの列を別途作成し、それを差し込みに使うとほぼ解決します。Word 2019・Microsoft 365ともに手順は同じです。
【やってはいけないNG対処】「IFフィールドが効かないから手作業で入力する」はNG。数十件なら我慢できても、数百件になった瞬間に地獄が待っています。データのクリーニングに1時間かけても、手作業の労力と比べたら圧倒的に効率的です。
【情シス視点のひとこと】差し込み印刷のトラブルの7割はExcelデータ側の問題です。Wordを疑う前にExcelのデータを疑ってください。これ、現場で鉄則として染み付いています。
あるある問題③変更履歴をすべて承認したはずなのに提出先から「変更履歴が残っている」と指摘された
【困った状況】
「校閲タブで変更履歴をすべて承認して、画面には何も残っていないように見えたのに、送った相手から『変更履歴が残っていますよ』と言われた。何度やり直しても同じで、お客様への提出直前で焦った。」
【なぜこれが起きるのか】
「変更の表示」の設定が「なし」になっていると、変更履歴が実際には残っているのに画面に表示されない状態になります。「すべて承認」を実行したと思っていても、表示が「なし」になっている状態では変更履歴が見えないだけで承認操作が行われていない、というケースが起きます。また、テキストボックスや図表の中の変更履歴は、通常の「すべて承認」操作では漏れることがあります。
【その場でできる応急処置】
-
校閲タブ > 変更グループ > 変更の表示を「すべての変更履歴/コメント」に切り替える。
- 変更履歴がある場合は改めて「すべて承認」を実行する。
- ドキュメント検査(
ファイル > 情報 > 問題のチェック > ドキュメントの検査)を実行して変更履歴が検出されないことを確認する。
【根本解決の手順】
提出前の最終チェックとして「ドキュメント検査」を必ず実行することをルール化してください。変更履歴・コメント・隠しテキスト・個人情報が一括で検出・削除できます。Microsoft 365・Word 2019・2021 すべて同じ手順です。Word for Mac でも同様に
ツール > ドキュメントの保護
からアクセスできますが、検査項目がWindows版より少ないため、重要書類はWindows版でも確認することを推奨します。
【やってはいけないNG対処】「変更の表示」を「なし」にしたまま印刷または送付するのは絶対にNG。変更履歴が見えないだけで内部データには残っています。相手がWordで開いたら変更履歴が全部見えてしまいます。
【VBAで一発解決できる場合】ドキュメント検査の自動実行はVBAでも可能ですが、Document.RemoveDocumentInformationメソッドはWord 2010以降でサポートされています。ただし、このメソッドは操作が非常に強力で元に戻せないため、必ずバックアップを取ってから実行してください。
【情シス視点のひとこと】部署全体で「外部提出前はドキュメント検査を実行する」をチェックリストに入れることを強くおすすめします。一度「変更履歴ありのまま提出」インシデントを経験すると、もう二度と忘れませんが、そういう経験は最初からしないに越したことはないです。
あるある問題④長文文書で目次を更新したら見出し番号がめちゃくちゃになった
【困った状況】
「100ページ超の規程集で、目次を更新したら見出しの番号が重複したり歯抜けになったりした。スタイルは設定しているはずなのに、なぜか目次に出てくる見出しと出てこない見出しが混在している。」
【なぜこれが起きるのか】
目次はスタイルが「見出し1」「見出し2」に設定されている段落だけを収集します。見た目が見出しっぽくても、スタイルが「標準」や「本文」のままだと目次に現れません。また、アウトラインレベルが段落書式の「直接書式」で設定されているケース(スタイルではなく段落の「インデントと間隔」でアウトラインレベルを設定)では、見出しとして認識されないことがあります。さらに、文書の一部をコピーしたときに「見出し1」スタイルが2つ存在するような重複スタイル問題も目次の崩れを引き起こします。
【その場でできる応急処置】
-
表示タブ > 表示グループ > ナビゲーションウィンドウを開き、見出しとして認識されているものと認識されていないものを目視で確認する。
- 目次に出ていない見出し段落をクリックして選択し、スタイルが「見出し1」等になっているかホームタブで確認する。「標準」や別のスタイルになっていたら適切な見出しスタイルを適用し直す。
- 目次を右クリックして「フィールドの更新」→「目次全体を更新する」を選択して目次を再生成する。
【やってはいけないNG対処】目次を手動で直接編集するのは最大のNGです。目次はフィールドコードで自動生成されており、手動編集した内容は次の「目次の更新」操作で全部消えます。「目次を手入力で直したのに、更新したら消えた」という悲劇は毎年大量に発生しています。
【情シス視点のひとこと】長文文書のトラブルのほとんどは「スタイルの設計段階」で防げます。文書を作り始める前に5分かけてスタイルを設計しておくか、事前に作ったテンプレートから始める習慣があれば、こういうトラブルは起きません。
あるある問題⑤保存したはずのWordファイルが消えた・元に戻せない
【困った状況】
「一生懸命作った報告書をCtrl+Sで保存したはずなのに、翌日開いたら数時間前の状態に戻っていた。OneDriveに保存していたが、どこを探しても最新版が見つからない。」
【なぜこれが起きるのか】
OneDriveの同期が完了する前にPCをシャットダウンした場合、ローカルに保存されたデータがオンラインに反映されずに古いバージョンに戻ることがあります。また、複数のデバイスで同じファイルを開いていて「競合」が発生すると、一方のバージョンが「競合ファイル」として別名保存され、本体は古いバージョンになることがあります。
【その場でできる応急処置】
- OneDriveのウェブサイト(onedrive.live.comまたは会社のSharePoint)にアクセスする。
- 対象ファイルを右クリックして「バージョン履歴」を選択する。
- 更新時刻を確認して、最新のバージョンがあれば選択して「復元」をクリックする。
- バージョン履歴がない場合は、Wordの
ファイル > 情報 > バージョン管理 > 保存されていない文書の回復から自動回復ファイルを探す。
【二度と起こさないための予防設定】OneDriveの自動保存をオンにすること(Wordのタイトルバー左端の「自動保存」トグルをオンにする)と、バージョン履歴を有効にすること(SharePointサイトの設定でバージョン管理を有効化)の両方を設定しておくと、ほぼどんな状況でも回復できます。また、重要な作業の節目には意識的に「名前を付けて保存」で別名のスナップショットを残す習慣も有効です。
【やってはいけないNG対処】「消えたから諦めてゼロから書き直す」を最初にやってはいけません。まずOneDriveのバージョン履歴とWordの自動回復ファイルを確認してください。ほとんどのケースでデータは何らかの形で残っています。
【情シス視点のひとこと】「ファイルが消えた」案件の90%は「消えていない、見つかっていない」案件です。自動回復ファイルの保存先(Windowsなら
C:\Users\ユーザー名\AppData\Roaming\Microsoft\Word\
)を一度確認してみてください。想像以上に多くの一時ファイルが残っていて、過去のデータが救出できることが多いですよ。
ぶっちゃけこうした方がいい!
ここまで読んでくれた方には、正直に言います。
Wordの問題の根本は、ほぼ全部「フォントや見た目を直接書式で管理しようとしていること」に行き着きます。フォントが変わらない、貼り付けたら崩れた、目次がおかしい、スタイルが反映されない——どの問題もスタイルを正しく設計・運用していれば、8割は起きなかった問題です。
私が15年以上現場でサポートしてきて痛感するのは、WordはExcelやPowerPointと根本的に設計思想が違うという点です。ExcelはセルにそのままデータとフォーマットをセットしてOKです。PowerPointはスライドにテキストボックスを置いてそのまま見た目を整えればいい。でもWordは違います。Wordは「コンテンツと書式を分離して管理する」という思想で作られたアプリです。スタイルという「書式の設計図」を最初に用意して、その設計図を文書全体に適用することで初めて真価を発揮します。
ぶっちゃけ、Wordを「高機能なメモ帳」として使っている限り、今回紹介したようなトラブルは永遠についてまわります。でもスタイルを使いこなせば、100ページの文書のフォント全体を3秒で変更できるし、目次は自動で生成できるし、書式の崩れも起きなくなる。
「スタイルって難しそう」と思っているなら、まず「標準」スタイルと「見出し1〜3」の4つだけを覚えてください。それだけで業務のWordの9割はカバーできます。残りの機能は必要になったときに覚えれば十分です。
VBAについても言わせてください。「怖い・難しそう」という印象があるかもしれませんが、この記事で紹介したコードはコピペするだけで動きます。VBAは「面倒な繰り返し作業を自動化する道具」です。100ファイルを手動でPDFにするくらいなら、10分かけてVBAを設定した方が圧倒的に早い。投資対効果が全ツールの中でトップクラスです。
そして最後に一番大事なことを言います。バックアップだけは絶対に省略しないでください。どんなに正しい手順を踏んでも、作業前のバックアップがないと取り返しのつかないミスになります。私が今まで見てきた「最悪の事態」は例外なく「バックアップがなかった」ケースでした。1分かければ済む操作です。面倒でもやってください。
Wordは使いこなせれば本当に強力なツールです。この記事を参考に、ぜひ「なんとなく使う」から「正しく使う」への一歩を踏み出してください。
Wordのフォント変更が反映されないに関する疑問解決
フォントを変更したのに印刷すると元の書体になる場合は?
画面上では変更されているのに印刷すると元のフォントになる場合、プリンターにフォントの置き換え機能が設定されている可能性があります。Wordの「ファイル」→「印刷」→「プリンターのプロパティ」からプリンター設定を確認し、フォント置換の設定を無効にしてください。また、Wordの「ファイル」→「オプション」→「詳細設定」と進み、「印刷」セクションにある「トゥルータイプフォントの代わりにプリンターフォントを使う」のチェックを外すことでも改善できる場合があります。
特定のパソコンだけフォントが変わらないのはなぜ?
同じWordファイルでも、あるパソコンでは正しく表示されるのに別のパソコンでは変わらない場合、そのパソコンに対象のフォントがインストールされていない可能性が高いです。フォントはパソコンごとにインストールが必要です。FontSquirrelやGoogle Fontsなどから無料フォントをダウンロードする場合も、使うすべてのパソコンにインストールする必要があります。会社で文書を共有する場合は、使用するフォントを統一し、全員のPCにインストールしておくことがトラブル防止の基本です。
英数字だけフォントが変わらないのはなぜ?
日本語Wordでは、フォントの設定に「日本語用のフォント」と「英数字用のフォント」の2種類が別々に存在します。ホームタブのフォント欄を変更したとき、日本語用フォントだけが変わって英数字用フォントが変わっていない、あるいはその逆のケースがあります。正確に設定するには、「フォント」ダイアログ(
Ctrl+D
で開く)を使い、「日本語用のフォント」と「英数字用のフォント」の両方を確認・変更してください。特に英数字だけ変わらない場合は、英数字用フォントの欄が「本文のフォント」などに設定されていることが多く、ここを明示的に変更するだけで解決します。
フォントを変えると行間が崩れてしまうのはなぜ?
フォントを変更すると行間や段落の間隔が崩れることがあります。これはWordの段落設定で「行間」が「最小値」や「固定値」に設定されているときに起きやすい現象です。フォントのサイズや行の高さが変わると、固定値の行間設定が合わなくなって文字が詰まったり重なったりします。「段落」ダイアログ(ホームタブの段落グループ右下の矢印をクリック)を開き、「間隔」の「行間」を「1行」や「倍数」に変更することで、フォントサイズに合わせて行間が自動調整されるようになります。
まとめ
Wordでフォント変更が反映されない問題は、「バグ」や「不具合」ではなく、複数の仕組みが組み合わさった結果として起きる現象です。原因を正確に把握すれば、必ず解決できます。
今回学んだ内容を整理すると、文字コードの壁(JIS外の漢字)・直接書式によるスタイルの上書き・Normal.dotmのロックやアドインの干渉・テキストボックスや図形への個別設定・Windows 11のフォント非表示設定・文書の編集制限という6つが主な原因です。
それぞれの解決策を順番に試せば、ほぼすべてのケースで正しいフォントへの統一が実現できます。特に「ページ設定からフォントを設定する」方法と「書式のクリア(
Ctrl+Q
・
Ctrl+Space
)」の2つは、知っているだけで作業効率が大きく変わるテクニックです。ぜひ今日から実践してみてください。
Wordのフォント設定に悩む時間を減らして、文書作成そのものに集中できる環境を整えましょう。この記事が、その第一歩になれれば嬉しいです。





コメント