Microsoft Access 掲示板

ファイル内で有効な変数 / 1

2 コメント
views
4 フォロー
1
hiroton 2024/07/12 (金) 14:41:02 cda86@2ee8f

変数の適応範囲というものがあります。一般にスコープと言われます

スコープと可視性について

第108回.変数の適用範囲(スコープ,Private,Public)(エクセルの神髄 さん)

モジュールの先頭部分(プロシージャ外)にPublic宣言で変数を宣言すればどこからでも使える変数になります

宣言した後の使い方はほかの変数と同じです。ただし、パブリック変数は、プロシージャレベル変数として同名の変数を別途宣言することが可能なので、使用には注意が必要です

また、実行中に書き換えることのない値であれば変数ではなく定数で宣言するのが望ましいです

Public Const 共通保存フォルダ = "C:\Users\user\Desktop[フォルダー名]\"

宣言場所はどのモジュールでも変わりませんが、システム全体で共有されるものは、標準モジュールを追加して整理すると良いでしょう


ACCESSでこのようなデータを扱うなら、システム環境テーブルを作ってしまうのも手です

T_SYSENV

keyitem
共通保存フォルダC:\Users\user\Desktop[フォルダー名]\

テーブルに保存してあるデータはDLookup関数で参照できます。また、その機能をユーザー定義関数にしてしまえばそのほかの各モジュールで使う場合も使いやすくなります

Public Function getSysEnv(key As String)
    getSysEnv = DLookup("item", "T_SYSENV", "key='" & key & "'")
End Function
?getSysEnv("共通保存フォルダ")
C:\Users\user\Desktop[フォルダー名]\

テーブルに保存することによって、VBAを編集する必要がなくなる≒ランタイム環境でも(テーブルのデータを編集する機能を作っておけば)設定変更が可能になります

通報 ...