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

Accessで作ったVBAの修正・変更を、バッチ様なプログラムを作成して、それをダブルクリックするだけで、手持ちのAccessのファイルが修正されるようなものをAccessで作成することはできるのでしょうか?またどのように作成するのか、参考になるURLなどがあれば教えてください。Accessは2003を利用しています。

●質問者: HAYA
●カテゴリ:コンピュータ 学習・教育
✍キーワード:access URL VBA ダブルクリック バッチ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● fester
●35ポイント

検証していませんが、次の方法があるかと思います。


1.データ用MDBとプログラム用MDBとに分けておき、後者を差し替える。


2.標準モジュールを差し替える。削除??>インポート

Application.VBE.ActiveVBProject.VBComponents.Remove Application.VBE.ActiveVBProject.VBComponents("Module1") 
Application.VBE.ActiveVBProject.VBComponents.Import "C:\Module1.bas"

3.標準モジュールを書き替える

Application.Modules のオブジェクトモデルを使う。

次の例は、指定した標準モジュールにプロシージャを新規に追加する例です。

 Application.DoCmd.OpenModule "Module1" '開いておくのがミソらしい
 With Application.Modules("Module1")
 .InsertText ("Sub Hoge()" & vbCrLf)
 .InsertText (" MsgBox ""Hello"" " & vbCrLf)
 .InsertText ("End Sub" & vbCrLf)
 End With

Module オブジェクトは、いろいろなプロパティ、メソッドを持っています。

インテリセンスとヘルプで確認すると良いかと。

部分的に修正するのが面倒であれば、

DeleteLines

で全部消して、

InsertText

で新規に追加して保存するとか、

Application.Modules("Module1").AddFromFile "C:\Module1.bas"

2のようにファイルから取り込むとかいった方法がありそうです。


※ただし、こちらのページを見ますとセキュリティ設定が必要になるような事が書いてあります。

◎質問者からの返答

詳しく・丁寧なご回答ありがとうございます。

変更するものが、Access初心者のため、できましたら、ファイルをダブルクリックするだけで、変更できればと思っています。

そのようなものをAccessを使って作成することが可能でしょうか?


2 ● fester
●35ポイント

変更用のプログラムは何もACCESSでなくても良いですよね。

ACCESSでやるのであれば、ダブルクリックで起動したときに処理を走らせればよいですし、

EXCELでもできるでしょうし・・・

私のお勧めはWSH(VBScriptのバッチ)ですね。


Windows Scripting Host (WSH) にて、VBScript で Accessオブジェクトを操作すればできます。

WSHについて

http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/

http://www.atmarkit.co.jp/fwin2k/operation/wsh01/wsh01_01.html

VBScriptでAccessオブジェクトを作る

http://www.happy2-island.com/vbs/cafe02/capter00501.shtml

などが参考になると思います。



ですが・・・

余談ですが私でしたら、プログラムコード部分を書き替えたり、差し替えたりするのはしないとおもいます。

1.最新MDBを配布

2.ユーザがメニューから「旧版のデータを取り込み」のボタンを押して、

旧データをすべてインポート

(この部分のプログラムを作成する必要がある)

3.旧版の破棄

というような手順でやるかもしれません。

(テーブルのインポートとかであればセキュリティ制限にかかることもないと思います)

◎質問者からの返答

ありがとうございました。

参考にさせていただきます。

関連質問


●質問をもっと探す●



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