VB6・VBA関数メモ:Environ関数

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

この関数はOSの環境変数の値を取得する際に使用します。

これによりWindowsフォルダやTempフォルダのパスを取得することができます。
現在設定されている値は「システムのプロパティ」にある「環境変数」画面を参照して下さい。

環境変数の名前を指定すると値が返ってきますが、
環境変数の番号を指定すると「名前=値」の形式で返ってくるようです。


概要

Environ(Expression)
機能 OSの環境変数の値を返す
引数 Expression 環境変数の名前 または 環境変数の番号
戻り値 環境変数の値


使用例

説明 記述例 出力
環境変数の値を取得
(例ではwindirの値を取得)
Environ("windir")
C:¥Windows
環境変数の値を取得
(例では1番目の値を取得)
Environ(1)
ALLUSERSPROFILE=C:¥ProgramData
環境変数の値を取得
(例では番号から値を取得し、名前がOSの環境変数の値を取得)
Dim idx     As Long
Dim str     As String
Dim datas() As String
idx = 1
Do
    str = Environ(idx)
    If str <> "" Then
        datas = Split(str, "=")
        
        If datas(0) = "OS" Then
            Debug.Print datas(1)
        End If
    End If
    idx = idx + 1
Loop Until str = ""
Windows_NT


動作検証

説明 記述例 出力
存在しない名前を指定すると空欄が返る
On Error Goto ERR_HANDLER
	Debug.Print Environ("ABC")
ERR_HANDLER:
	If Err > 0 Then Debug.Print Error

空欄を指定するとエラー
On Error Goto ERR_HANDLER
	Debug.Print Environ("")
ERR_HANDLER:
	If Err > 0 Then Debug.Print Error
プロシージャの呼び出し、または引数が不正です。
0以下を指定するとエラー
On Error Goto ERR_HANDLER
	Debug.Print Environ(0)
ERR_HANDLER:
	If Err > 0 Then Debug.Print Error
プロシージャの呼び出し、または引数が不正です。
256以上を指定するとエラー
On Error Goto ERR_HANDLER
	Debug.Print Environ(256)
ERR_HANDLER:
	If Err > 0 Then Debug.Print Error
プロシージャの呼び出し、または引数が不正です。


コメント
コメントする








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