• 締切済み

色んな種類の文書に同じ社名を反映させたい

こんにちは。Wordについて質問です。 wordで作成した文書が20種類ほどあります。 デザインや内容はそれぞれ異なります。 その文中に出てくる社名や担当者名を 1か所変更すればすべてに反映させたいです。 (フォントサイズは、各文書によって異なります。) 理想は、文書ごとにWordファイルをわけたいのですが(20ファイル) ブックマーク機能を使おうとすると同一ファイル内の必要があるようで・・・ 試しに20種類を1ファイルにおさめて作成し 1ページ目に社名と担当者を入力し、それをブックマーク、相互参照 したのですが、フォントサイズなどが1ページ目に依存してしまい 思ったような出来上がりになりませんでした。 担当者名の変更をおこない、印刷するという作業は 頻繁にあるので出来るだけ簡単な方法が理想です。 ブックマーク以外でも構いません。 何か方法あれば教えていただきたいです。 どうぞよろしくお願いします。 使用バージョン:Microsoft365

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

あまり回答が続かないようですが、問題の説明が不足しているように思う。 関係する機能の利用では (1)差し込み印刷で変更 (2)コンテンツコントロール(で入力) (3)検索と置換(の置換)で変更 のどれかなどで、対処できない課題でしょうか。 ーー   少し異例のことをしたければ、操作や設定では出来なくて、 どうしてもVBAの世界に入るようにも思いました。 ーー コードは下記+αで出来るのではないか。 1文書に文章があり、会社名(例 東都工業、簡略のため2箇所)を適当に散りばめて、 標準モジュールに(コードはWEBの似た例を借用) Sub findText() c = Array("", 6, 2) fs = Array("", 15, 25) n = 1 With Selection.Find .Text = "東都工業" Do While .Execute Selection.Font.Underline = True ' MsgBox c(n) Selection.Font.ColorIndex = c(n) Selection.Font.Size = fs(n) n = n + 1 Loop End With End Sub を作成して、全文を範囲指定しておいて実行。 毎回には変わらない前提で、 c = Array("", 6, 2)で色コードを配列化、(本例では2箇所。増やして連ねれば何か所でも設定できる) fs = Array("", 15, 25)でフォントサイズを配列化して、プログラムで指定している。 色コードは https://qiita.com/DianziYang/items/f292c334a51293735eae ColorIndex 色付き早見表 等に解説がある。

  • MT765
  • ベストアンサー率57% (2080/3618)
回答No.1

>その文中に出てくる社名や担当者名を >1か所変更すればすべてに反映させたいです。 その社名や担当者名を別ファイルで作っておいて、「参照ファイル」として挿入する方法でできないでしょうか。 参考 【外部ドキュメントのコンテンツにリンクするには】 https://www.wanichan.com/pc/word/2019/07/12.html 実際に自分で試していないのでうまくいくかどうかの確認はできていませんのでご了承ください。

tklog0035
質問者

お礼

ご回答いただきありがとうございます。 レイアウトが異なる文書で挿入箇所もフォントサイズも異なる為 オブジェクトとしてではなく、テキストとして挿入したいのですが この方法では難しそうです・・・ 早々にご回答いただきありがとうございました。

関連するQ&A

専門家に質問してみよう