人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

アクセス上からワードファイルを置換するにはどうすればよいのでしょうか。

アクセス上のテーブルに置換前と置換後のキーワードがあり、
置換する対象のファイルをワードで用意しています。

これらを使って、アクセスのフォーム上に用意したボタンを押下すると
対象のワードファイルを置換し、置換後に新しいワードファイルとして保存する
という機能を作りたいと考えています。

ワード上でVBAを使って置換する仕組みはいくつか見つけられたのですが、
アクセスからワードファイルを操作する方法がわかりません。

ご存知の方がいらっしゃいましたらご教示ください。
よろしくお願い致します。

※Office2003を使用しています。

●質問者: mitwui
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:VBA アクセス キーワード ファイル ボタン
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● degucho
●35ポイント

下記はExcel用ですが、Accessでも同様の手順です

http://q.hatena.ne.jp/1206705553

http://members.at.infoseek.co.jp/kenchan_h/index21.html

http://www.simple-sys.com/blog/2008/03/29/172/


1.Wordアプリケーションを起動

2.対象ファイルを開く

3.Documentオブジェクトに対して操作(置換に限らずWordのサンプルがいろいろ利用できます)

4.保存/終了


バージョン固定の場合参照設定してNew Word.Applicationとするほうが

コード補完が効くので便利です。

◎質問者からの返答

複数の参考URLと解説ありがとうございます。参考にさせていただきます。


2 ● jccrh1
●35ポイント ベストアンサー

OLE処理で行えばできます。

以下はサンプルプコード(関数にしました)です。

※ワードファイルはAccessのMDBと同じフルパスにしています。

ファイル名はとりあえずTEST1.docにしました。

Sub 置換(置換前 As String, 置換後 As String)
 Dim wdObj As Object
 Set wdObj = CreateObject("Word.Application")
 With wdObj
 .Documents.Open FileName:=CurrentProject.Path & "\TEST1.doc"
 With .Selection.Find
 .ClearFormatting
 .Replacement.ClearFormatting
 .Text = 置換前
 .Replacement.Text = 置換後
 .Wrap = wdFindContinue
 .MatchFuzzy = True
 .Execute Replace:=2
 End With
 .ActiveDocument.Save
 .Quit
 End With
 Set wdObj = Nothing
End Sub
◎質問者からの返答

ご丁寧な解説感謝します。自分のケースに適用して作ってみます。ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ