WshNetworkでのコンピュータ名とドメイン名とログインユーザ名の取得

単にドメイン名とログインユーザ名を調べるだけであれば、コマンドプロンプトで「whoami」と入力+Enterキーを押せば「ドメイン名 \ ログインユーザ名」の形式で出力されてすぐに分かります。

同様にVBAでもWshNetworkクラスを使うとコンピュータ名とドメイン名とログインユーザ名を取得することが出来ます。


参照設定

WshNetworkはCreateObject関数を利用してこのような書き方を紹介されることが多いと思います。

しかしこの書き方では利用できるプロパティやメソッドを候補表示できません。しかし参照設定を行えばプロパティやメソッドを表示することが可能です。

WshNetworkの参照設定は、VBA画面→ツールメニュー→参照設定で「Windows Script Host Object Model」を選択します。これでWshNetworkクラスを利用できるようになります。

以下はWshNetworkクラスのインスタンス変数の作成サンプルです。書き方は2通りあります。どちらでもいいです。1つ目のように1行で書いてもいいですし、2つ目のように変数定義とSetを別に書いてもいいです。

以降のサンプルコードは参照設定を行った場合の書き方になります。


構文

それぞれWshNetworkクラスのインスタンス変数のプロパティです。内容はプロパティの名前の通りですね。


サンプルコード

コンピュータ名、ドメイン名、ユーザ名を取得し、それぞれをイミディエイトウィンドウに出力するサンプルです。