相互参照の改善

2018年7月12日(木)
出川 智啓
【Wordのスタイル機能を使いこなして技術文書を書こう!】株式会社インプレスR&Dより発行された「エンジニア・研究者のためのWordチュートリアルガイド」の立ち読みコーナー第8回です。

第8章 相互参照の改善

いよいよ本書のメイントピックに到達した.本章では,Wordの相互参照がうまくいかない理由を述べて,それらを改善するためのたった一つの機能を紹介する.

8.1 なぜ思い通りにいかないか

 さて,図表の引用や数式番号の引用では,番号のみを引用できないという問題があり,それに起因して,作成する文書にも制約が生じた.なぜWordの相互参照がこちらの思い通りに行かないのかというと,我々がWordの表記から予想した情報とWordが取り扱う情報に齟齬があるためである.

 我々はかしこいので,ラベル,図番号,キャプションを正しく認識できる.しかし,Wordは特にラベルに対する認識が異なり,どうやら図表番号の左にある内容をラベルとして認識するようである.また,図表番号の直後から始まり,段落が終わるまでの全ての内容をキャプションと認識する.これは図 68および図 69に示した例文からの推察である.この例文は,図表番号が独立した段落になく,他の文章と同一の段落にきてしまった場合に,その図表番号を相互参照するとどのようになるのかを示している.

図 68 Wordの相互参照の挙動を確認するための例文

  相互参照の文字列図表番号全体を選択すると,段落冒頭の「さて」から改行記号直前の「例文」までが参照されている(図 69(a)).相互参照の文字列番号とラベルのみに変更すると,段落冒頭の“さて”から始まるのは同じであるが,図 1までしか参照されていないことが確認できる(図 69(b)).

図 69 相互参照の文字列を変化させたときの結果

 Wordの中身を知りようがないのであくまで推察でしかないが,数式番号の相互参照がうまくいかなかった例と対比させても,参照結果を矛盾無く説明できる.

 ではどのようにすれば改善できるのだろうか.その答えとして,スタイル区切りという機能を紹介する.

8.2 スタイル区切り

 2.2節において,Wordの改行は改段落(改行+スタイルの終わり)であると述べた.また,段落内改行という,スタイルを終わらせずに改行する方法も述べた.ではその逆に,改行せずにスタイルを終わらせる機能はあるのだろうか?Wordは図表番号の左にある内容をラベルとして認識し,図表番号の直後から段落が終わるまでの全ての内容をキャプションと認識する1.この挙動によれば,図表番号の左右で段落が終われば,番号を一つの段落として認識するので,番号のみを引用できるのではないか!それを実現する機能がスタイル区切りである.スタイル区切りを図表番号の前後に挿入することで,Wordは番号のみを独立した一つの段落として認識するようになる.

スタイル区切り使用時の注意

 スタイル区切りは標準ではリボンに搭載されていないので,見かけた事がある読者は多くないかも知れない.クイックアクセスツールバーに登録する方法を示しておこう.3.5節を参考にクイックアクセスツールバーのオプションを表示し,コマンドのプルダウンメニューから全てのコマンドを選択し,スタイル区切りを探してクリックし,追加する.リボンのユーザ設定でもほぼ同様にして個人用タブに追加できる.ショートカットキーはAlt+Ctrl+Enterである.

図 70 クイックアクセスツールバーへのスタイル区切りの追加

 図 71はスタイル区切り挿入時のWordの挙動である.スタイル区切りを挿入すると,点線で囲まれた改行記号が入力される.そして,おそらくその段落あるいは前後の段落のスタイルが崩れるだろう.著者らの経験によると,スタイル区切りを入力すると,ほぼ確実にスタイルが崩れる.また,所望の場所にスタイル区切りが入力されない.まずは落ち着いてこれは正しい挙動だと自身に言い聞かせ,スタイル区切り記号のみを選択して切り取り,Ctrl+Zを2回入力する2.その後,スタイル区切り記号を正しい(所望の)位置に貼り付ける.これ以降,スタイル区切りを挿入したい場合には,入力済みのスタイル区切り記号をコピー&ペーストすればよい.

図 71 スタイル区切り挿入時のWordの挙動

8.3 図表番号の挿入と参照

 さて,スタイル区切りを紹介したところで,実際に図表番号の参照に使っていこう.

 図表番号を挿入してキャプションを記述するところまでは全く同じである.キャプションの記入が終了したら,カーソルを図表番号の左に移動させ,スタイル区切りを入力する.図表番号用のスタイルが崩れ,左に寄ってしまったが,慌てずスタイルを適用し直してほしい.図表番号の右にもスタイル区切りを挿入する.このとき,スタイル区切りの編集記号はコピー&ペーストした方がよい.一見すると隙間が広く空いたように見えるが,スタイル区切りは印刷時には表示されず,隙間は詰められる.

 では相互参照してみよう.参考資料タブの相互参照を選び,相互参照ダイアログの参照する項目から,先ほどの図表番号のラベル(図)を選択しよう.すると,番号だけが表示されている.スタイル区切りによって番号のみが段落として認識されているためである.参照する際は,図表番号全体でもラベルと番号のみのどちらでもよい.これで気兼ねなく番号のみを参照できるようになる.その代償として,ラベルを自身の手で入力することになる.そうすると,ラベルを図からFig.に変更したくなると,全て手打ちで変更する必要が生じる3.その労力を低減する方法については8.8節で言及する.

図 72 図表番号にスタイル区切りを挿入する手順

図 73 図表番号の番号のみの参照

 残念なことに,スタイル区切りを利用して図表番号のみを参照できるようにすると,図表目次を作成する際に,図表番号とページ数しかリスト化されない.そのため,ラベルやキャプションを自身で記述する必要が生じる.したがって,図表目次を作る必要がある読者については図表番号にスタイル区切りを利用せず,次節で紹介する数式番号の挿入にのみスタイル区切りを利用するのが妥協点と考えられる.

8.4 数式番号の挿入と参照

 数式番号の入力についても同じように挿入・参照できる.しかし,ここはWordの振る舞いを逆手に取り,もう少し便利に参照できるようにしてみよう.

 適当な数式を入力し,その右側に数式番号を入力する状況を想定している.入力した式の右にカーソルを置き,参考資料タブの図表番号の挿入を選び,ラベルを適当に決定した後,ラベルを図表番号から除外するにチェックを入れる.図表番号の場合と同じように,番号の左右にスタイル区切りを置けば,番号のみを引用できるようになる.

図 74 数式番号とスタイル区切り

 ここでよくよく考えてみると,Wordでは,図表番号が含まれる段落全体を図表番号と認識し,図表番号全体を参照すると,段落全てが展開された.これは,番号とスタイル区切りの間に文字を書けば,その文字もまとめて参照できることを示している.数式の場合,必ず括弧付きで引用されるので,数式番号とスタイル区切りの間に括弧を追加しておけば,図表番号全体を参照すると括弧もまとめて引用されるはずだ.

 実際にそうなるのかをやってみよう.式を書き,タブなどで適切な隙間を空け,右に揃うように数式番号を図表番号の挿入から挿入する.このとき,ラベルは除外しておく.左括弧の左にカーソルを移動し,スタイル区切りを入力する.同様に右括弧の右にカーソルを移動してスタイル区切りを入力する(図 75).このとき,適切な場所に入力されなければ,カット&ペーストを活用する.段落のスタイルが崩れた場合は,落ち着いてスタイルを適用し直してほしい.

図 75 数式番号への括弧の追加

 これで入力は完了したので実際に参照してみよう.相互参照参照する項目から当該ラベルを選択すると,参照先に括弧付きの番号が表示されている.図表番号全体を引用すれば,晴れて数式番号が括弧付きで参照されるようになる.番号とラベルのみを選ぶと,相変わらず終わり括弧が入力されないが,今の我々にとってそのような挙動は恐れるに足りない.

図 76 数式番号と括弧の参照

8.5 独立数式の保持

 数式を入力した後,数式番号を入力しようとタブや括弧を入力すると,数式が独立数式から行中数式へ変換される.この挙動は,“数式の後ろに改行以外を入力した瞬間に行中数式になる”と判断できる.タブやスペースの入力でも変換される.改行が入力できるのであれば,スタイル区切りを入力しても独立数式のままになるはずだ.やってみると確かに独立数式の形式を維持している.

図 77 数式直後のスタイル区切りの有無による数式の形式

 独立した行に数式を書く場合には,図 78に示すように,インデント,数式,スタイル区切り,タブ,スタイル区切り,開き括弧,数式番号,終わり括弧,スタイル区切りと並べる.このようにすることで,数式の見栄えを保持したまま番号を参照できるようになる.余分な表を用いる必要もない.このやり方はWordに標準で取り込まれてもよいのではないかと密かに考えている4

図 78 数式段落の体裁

8.6 相互参照にラベルが出てこない場合

 このように,Wordが想定していない使い方をしていると,色々と問題が生じる.ここで紹介している技巧に関連する問題としては,参考資料ダイアログに当該ラベルが表示されなくなる事が上げられる.特に,作成したPCとは別のPCで編集する場合によく発生するように感じているが,何が原因かはまだ特定できていない.おそらく,スタイル区切りによってラベルと番号を切り離したことが問題と思われる.

 この問題の解決策として,当該ラベルをWordに認識させる作業が必要になる.まず,挿入済みの図表番号5にカーソルを移動する.正しく選択できていれば,図表番号がグレーで塗りつぶされる.そこでShift+F9を入力すると,数字が展開されて謎の文字列に置き換わる.この文字列をフィールドコードという.このときに左端の文字列SEQの直後に表示されている文字列がラベルである.もう一度Shift+F9を押して数字に戻した後,参考資料タブの図表番号の挿入を選び,ラベル名ボタンをクリックして新しいラベルダイアログを表示させ,先ほど調べたラベル名を入力し,OKを押す.番号を実際に挿入する必要はないのでキャンセルしてダイアログを閉じる.これでラベルがWordに認識される.もう一度相互参照のダイアログを開いて見てほしい.ここで認識されていなければ,残念ながら再び番号の挿入からやり直すことになる.

図 79 Wordのフィールドコードの表示とラベルの確認

8.7 文献番号の挿入と参照

 さて,文献については非常に厄介であることは述べた.いちいちXSLを書いている時間はないが,とりあえずWordを使って文献番号の参照をしたいという場合には,非常に苦しいが回避策はある.書誌情報を記載する順序など参考文献の書式を手動で入力する必要はあるが,引用番号をいちいち手打ちするよりはマシというものだ.

 本節では二つの場合について文献番号の引用方法を示す.一方は,文献を第一著者姓のアルファベット順に並べ,文献番号を引用する方法である.他方は,引用順に文献番号を付与し,文献番号順に並べる場合である.

文献を第一著者姓のアルファベット順で並べる場合

 この場合は,やることは図表番号の挿入とほとんど変わらない.文書末に参考文献の章あるいは節を設けたのち,数式番号の挿入と同じやり方で括弧付きの番号を挿入していく.このとき,文献番号を囲む括弧の右にはスタイル区切りが挿入される.その後,番号の後ろに書誌情報を記述していく.このとき,タブやインデントを使って整形する.

 文献番号を引用する場合は,本文中の必要な箇所にカーソルを置き,参考資料タブの相互参照ダイアログから当該ラベルを選択し,入力していく.このとき,番号の左には特殊文字として改行なしを入力する.このようにすると,本文中で新たに文献を引用すると,自動で文献番号が振り直され,文献一覧の番号も更新される.

図 80 参考文献一覧の作成と本文中での引用(アルファベット順)

文献を引用順に並べる場合

 文献が引用順に番号付けられている場合は,少しひねくれている.先ほどは参考文献一覧にある各文献に図表番号を与え,本文中にはその番号を引用したが,今回はその逆をする.つまり,本文中の引用箇所にさしかかった段階で,参考資料図表番号の挿入を使い,本文中に番号を挿入する.この番号が文献番号に相当する.このとき,番号の左右をスタイル区切りで区切ることにより,前後の文章と文献番号が切り離される.なお,引用した文献番号のみが行頭に送られるのを防ぐために,スタイル区切りの左には特殊文字の改行なしを入力しておく.

 参考文献一覧を作成するときは,書誌情報の前に番号を参照する.このような参照方法にすることで,引用文献が新たに増えた場合にも対応できる.

図 81 本文中での文献番号の挿入と参考文献一覧での引用

図 82 参考文献が追加された場合

8.8 文書パーツの活用による効率化

 クイックパーツ6とは,定型句の入力の簡略化を図る機能である.入力の方法によっては,定型句として入力した項目を一括で変更できるようになる.この機能を利用し,数式入力時の段落書式設定の簡略化,および図表ラベル変更の簡略化について説明する.

数式入力時の段落書式設定の簡略化

 本章では,スタイル区切りを軸に,Wordの相互参照機能の改善について紹介してきた.特に数式番号を参照できるようになったことに極めて大きな意味がある.しかしながら,独立数式の形式を保ちながら数式番号を参照できるようにするには,その段落においてインデント,数式,スタイル区切り,タブ,スタイル区切り,開き括弧,数式番号,終わり括弧,スタイル区切りを並べなければならない.ある程度はスタイルで対応できるが,やはり毎回スタイル区切りを入力するのは手間である.これについては,文書パーツを利用することで数式入力にかかる作業を数クリックまで減らすことができる.

 まずは数式用のスタイルを確認しておこう.スタイルで設定しなければならない項目は,インデント幅および数式と数式番号間に置くタブの設定である.これについては,一度適当な段落でインデントやタブの設定をして数式スタイルを作り,段落を選択状態にし,スタイルウィンドウあるいはクイックスタイルにおいて当該スタイルの右クリックメニューからスタイルを選択箇所と一致するように更新する を選ぶと手軽である.

図 83 数式スタイルの作成

図 84 数式スタイルの簡単な更新

 段落の体裁が整ったら,数式,スタイル区切り,数式番号を挿入する.このとき,数式の挿入は最後に行うのであるが,スタイル区切りのすぐ左にカーソルが存在している状態で数式を挿入すると,数式入力の際に数式下に点線が引かれる.この状態になると,数式が印刷時に表示されなくなってしまう.これを回避するには,スタイル区切り記号の左に何らかの文字をコピー&ペーストし,さらにその左に数式を挿入した後,当該文字を削除する.

図 85 数式コンテンツコントロールの挿入

 ここまでできたら,段落全体を選択状態にし,挿入タブのクイックパーツから,選択範囲をクイックパーツギャラリーに保存する をクリックする.このとき,定型句の名前などを登録する.分類は全般になっているが,プルダウンメニューから新しい分類の作成を選択すれば,任意の分類名で登録できる.これはクイックパーツに表示されるときにまとまって表示されるかどうかの違いでしかない.保存先は標準でBuilding Blocks.dotxとなっている.これは定型句を登録して配布するために設けられているファイルである.

 他の計算機環境でも同じ定型句を使いたい場合には,このファイルを当該計算機環境にコピーすればよい.文書テンプレート自体に登録することもできる.テンプレート自体を配布する場合には,文書テンプレートに登録した方がよいだろう.オプションについては,今回の状況では内容のみ挿入でも内容を段落のまま挿入のどちらでもかまわない.一度クイックパーツに登録しておけば,登録されたパーツの一覧から,数式入力用の体裁を数式番号が付与された状態で挿入できるようになる.

図 86 クイックパーツへの登録

図 87 クイックパーツからの挿入

図表ラベル変更の簡略化

 図表ラベルについても,同様にクイックパーツに登録する.このとき,登録する名前はアルファベットでなるべく短く,わかりやすくしておく.ここではFigLabelと名付けた.入力する場合は,クイックパーツからではなく,Wordのフィールドとして入力する.ラベルを入力したい箇所で日本語入力を無効にしてCtrl+F9を押すと,フィールドを入力する枠が挿入される.定型句はAutotextと呼ばれるパーツに属しているので,中括弧の中にAutotextパーツ名を入力する.このとき,パーツ名には先ほど付けたラベル名(FigLabel)を入力する.入力ができたらShift+F9を押してフィールドコードを非表示にする.このとき,一度何も表示されなくなるが,入力していた箇所を選択してF9を押すと登録された文字が展開される.フィールドとして入力したラベルはコピー&ペーストで別の箇所に貼り付けられる.

図 88 図ラベルのクイックパーツへの登録

図 89 フィールドを利用した図ラベルの入力

 図表ラベルを図からFig.に変更したくなったら,本文のどこかにFig.と書いて上と同じ手続きでクイックパーツに登録し直す.このとき,ラベル名は同一(FigLabel)とする.文書パーツを設定し直すか問われるので はい を押す.正しく登録できていれば,クイックパーツの当該パーツのプレビューが更新されている.登録ができたら既に入力したラベルを選択してF9を押せば更新される.ラベル一つずつを選択してF9を押さなくても,Ctrl+Aで全文を選択してF9を押せば,全てのラベルが更新される.

図 90 図ラベルの更新

図 91 更新結果の確認

 この方法を用いれば,図表のラベルだけでなく,文献引用時の括弧を角括弧[]から丸括弧()に切り替えることもできる.極めて便利かと問われればそうでもなく,まだまだ面倒であるが,全て手作業をするよりは幾分マシという程度である.

(次回へ続く)


1. あくまで推察であることは強調しておかなければならない.

2. ご存じの読者も多いだろうが,これは編集を1段階戻すショートカットキーである.1回目のCtrl+Zでスタイル区切りの切り取り前に戻り,次のCtrl+Zでスタイル区切り挿入前に戻る.ただし,クリップボードにはスタイル区切り記号が存在しているので,それを所望の位置に貼り付ける.

3. 実際そのような場面はそう多くないと思うし,そういう時にこそ置換を使えばよいと思うのだが,謎の勢力にこれを問われることが希にある

4. このような泥臭い作業は隠蔽され,数式入力環境としてWordが内部的に処理してくれることが前提だが.

5. 当然のことであるが,図表番号の挿入から入力した式番号も含む.

6. 教えて!HELPDESK http://office-qa.com/index.htm(accessed at Oct. 1st)

国立大学,高専,大手自動車関連企業において,教育および研究開発に従事し,圧縮性/非圧縮性流れや微細な気泡を含む流れのシミュレーション方法の開発とGPUによる高速化を実施した経験を有する.専門は数値流体力学,混相流工学,ハイパフォーマンスコンピューティング.開発にはFortran 2003/2008, C/C++, Python, CUDA C/Fortranを利用している.

連載バックナンバー

業務アプリ書籍・書評
第13回

Wordをさらに使いこなすために

2018/7/31
【Wordのスタイル機能を使いこなして技術文書を書こう!】株式会社インプレスR&Dより発行された「エンジニア・研究者のためのWordチュートリアルガイド」の立ち読みコーナー第13回です。
業務アプリ書籍・書評
第12回

チュートリアル:学会講演論文テンプレートの改善

2018/7/26
【Wordのスタイル機能を使いこなして技術文書を書こう!】株式会社インプレスR&Dより発行された「エンジニア・研究者のためのWordチュートリアルガイド」の立ち読みコーナー第12回です。
業務アプリ書籍・書評
第11回

ページ番号,ヘッダーおよびフッター

2018/7/24
【Wordのスタイル機能を使いこなして技術文書を書こう!】株式会社インプレスR&Dより発行された「エンジニア・研究者のためのWordチュートリアルガイド」の立ち読みコーナー第11回です。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています