• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESS VBA を勉強中のものです。)

VBAで会社名をWord文書に挿入する方法

このQ&Aのポイント
  • ACCESS VBAで、フォーム上の会社名をWord文書に挿入する方法を教えてください。
  • 他のテキストボックス(部署名、担当者名など)も同じようにWordに挿入したい場合は、どのようにすればよいでしょうか。
  • 初心者ですが、お手数をおかけしますが、教えていただければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • jcctaira
  • ベストアンサー率58% (119/204)
回答No.2

ahoai09さん こんにちは。 会社名は「様」を検索して「様」前に入力した会社名を入れています。 部署名,担当者名も何かの文字を検索して「その前に入力した文字」を設定するのでしょうか? 多分、部署名は「様」とか敬称を付けないので、違う方法にするのだと思います。 今回は「様」「部署名」「担当者名」を探して入力した文字を置き換えるようにプログラミングをしてみました。 本来は置き換える処理部分は共通モジュール(サブルーチン)にした方が良いと思いますが、単純に作成しています。 ヒントだけなので、ahoai09さん自身でわかりやすく修正してください。 Private Sub cmd実行_Click() Dim Appwo As Word.Application Dim doc As Word.Document Dim stPath As String stPath = "C:\Users\pigo\Desktop\納品書.docx" Set Appwo = CreateObject("Word.Application") Set doc = Appwo.Documents.Open(stPath) Appwo.Visible = True With Appwo.Selection  .Find.Text = "様"  .Find.Replacement.Text = Me.txt会社名 & "様"  .Find.Execute Replace:=wdReplaceAll End With With Appwo.Selection  .Find.Text = "部署名"  .Find.Replacement.Text = Me.txt部署名  .Find.Execute Replace:=wdReplaceAll End With With Appwo.Selection  .Find.Text = "担当者名"  .Find.Replacement.Text = Me.txt担当者名  .Find.Execute Replace:=wdReplaceAll End With Set Appwo = Nothing Set doc = Nothing End Sub

ahoai09
質問者

お礼

この度はご回答いただきありがとうございました。まわりに教えてくれる人もおらず,初めて質問してみましたが予想以上の回答内容で驚いてます。本日,ご回答いただいたとおりに実行したところうまくいきました。本当に助かりました。ありがとうございました。

その他の回答 (1)

  • layy
  • ベストアンサー率23% (292/1222)
回答No.1

勉強なので、 部署だけ、担当者だけ、はできませんか?。 それで3つを見比べて変更箇所を突き止める。それでもダメなのか。 答えとなる構文聞いてから解析は、機能要件からどう記述したら?、の力はなかなかつきません。命令はどういう意味?はつくでしょうがー。両方必要です。 『プログラミング』しましょう。 INSERTBEFORE 会社名 が『様』の前に『会社名』だろうことは想像できますね?。 今の構文でわからない部分を聞く。 実行できた=理解した、でないですから。

関連するQ&A

専門家に質問してみよう