• ベストアンサー

vbaで環境編巣のパスだけ取得したい

Sub Sample() Dim Env As String, i As Integer Do i = i + 1 If Environ(i) = "" Then Exit Do Env = Env & Environ(i) & Chr(13) & Chr(10) Loop MsgBox Env End Sub このコードを実行すると、パス以外にもいろいろ取得されてしまうのですが パスのみ取得するにはどうすればいいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.3

こんなのでいかが?   Dim Env As String   Dim varPath As Variant   Dim i As Integer   Env = Environ("PATH")   MsgBox Env   varPath = Split(Env, ";")   For i = LBound(varPath) To UBound(varPath)     Debug.Print varPath(i)   Next

cugxwmpfgp6
質問者

お礼

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

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

趣味に応じて様々。 sub macro1()  dim i as long  dim s as string  dim res as string  do  i = i + 1  s = environ(i)  if s like "*PATH*" then res = res & s & vbcrlf  loop until s = ""  msgbox res end sub

cugxwmpfgp6
質問者

お礼

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

すると、全ての回答が全文表示されます。
  • f272
  • ベストアンサー率46% (8652/18506)
回答No.1

If Left(UCase(Environ(i)), 5) = "PATH=" Then で判断すればよい。

cugxwmpfgp6
質問者

お礼

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

すると、全ての回答が全文表示されます。

関連するQ&A