VB6・VBA関数メモ:GetSetting関数

GetSetting関数についてメモしておきます。

このステートメントは、レジストリからデータを取得する際に使用します。

取得できる範囲は「HKEY_CURRENT_USER¥Software¥VB and VBA Program Settings¥」内の
種類が文字列値(REG_SZ)の項目に限定されるようです。
この場所以外から取得したい場合はWin32APIを使用する必要がありそうです。

指定セクションの全キーデータを一括で取得したい場合はGetAllSettings関数
レジストリにデータを保存する場合はSaveSettingステートメント
レジストリのデータを削除する場合はDeleteSettingステートメントを使用します。


概要

GetSetting(AppName As String, Section As String, Key As String, [Default]) As String
機能 レジストリから指定の項目を取得
引数 AppName アプリケーション名 String型
Section セクション名 String型
Key キー名 String型
Default (省略時は空欄)
キーがない場合に返す規定値
戻り値 レジストリから取得したデータ String型


使用例

説明 記述例
(レジストリ状態)
レジストリからデータを取得
data = GetSetting("App", "Section1", "Key1")
Debug.Print data
出力 Data1
レジストリからデータが取得できない場合は規定値を返す
data = GetSetting("App", "Section1", "NoExist", "Def")
Debug.Print data
出力 Def
data = GetSetting("App", "NoExist", "Key1", "Def")
Debug.Print data
出力 Def
data = GetSetting("NoExist", "Section1", "Key1", "Def")
Debug.Print data
出力 Def


動作検証

説明 記述例
(レジストリ状態)
種類が文字列値(REG_SZ)以外の項目を取得しようとするとエラー
On Error GoTo ERR_HANDLER
Dim data As Variant
data = GetSetting("App", "Section1", "Key3", "Def")
Debug.Print data
ERR_HANDLER:
If Err > 0 Then Debug.Print Error
出力 プロシージャの呼び出し、または引数が不正です。


コメント
コメントする








    
この記事のトラックバックURL
トラックバック