【VBA】ログインユーザー名を取得する

VBAで
 ・Windowsにログインしているユーザー名を取得
できます!

取得方法は複数ありますが、ここでは私が
 ・1番シンプルと考える方法
を記載します!

Environ(“USERNAME”)」により、
ユーザー名を取得できます!

PR

VBAコード

Windowsにユーザー名「user」でログインしている状態で、以下を実行します。

Sub sample()
    'ユーザー名を取得
    MsgBox Environ("USERNAME")
End Sub

Environ関数」の引数に「USERNAME」を指定することで、「ログインユーザー名」を取得できます。

PR

実行結果

ユーザー名を取得できました。

実行結果
実行結果
PR

参考①

「ログインユーザー名」以外にも、「Environ関数」は「コンピューター名」や「CPUの名称」を取得できます。

詳細は以下の記事をご確認ください。


PR

参考②

WScript.Shell」の「SpecialFolders」により、デスクトップのパスを取得できます。

詳細は以下の記事をご確認ください。

PR

参考③

Environ関数」は、Windowsの環境変数に設定された値を取得する関数です。
上記以外も取得します。

詳細は公式サイトをご確認ください。

PR

参考④

ログインユーザー名を取得する方法として、「WshNetworkオブジェクト」を使用する方法もあります。

ただEnviron関数を使用した方法のほうが簡易のため、こちらの方法はオススメしません。
知識として知っておくだけでよいです。

'変数の宣言を必須
Option Explicit

Sub sample()

    Dim wnet As Object
    
    Set wnet = CreateObject("WScript.Network")
    
    'ユーザー名を取得
    MsgBox (wnet.UserName)
    
    '後片付け
    Set wnet = Nothing
    
End Sub

「WshNetworkオブジェクト」の「UserName」プロパティにより、ログインユーザー名を取得します(11行目)。


「WshNetworkオブジェクト」の詳細は、公式サイトをご確認ください。

タイトルとURLをコピーしました