- ベストアンサー
Excel VBA でログインしているアカウント(ユーザー)名取得?
WIn2000 と WindowXP において、 Excel VBA で、現在、ログインしているアカウント(ユーザー)名を取得して、表示させたいのですが、どうすればいいのですか? 見よう見まねの独学なので初心者の域をでていませんので、宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんな風でよいのではありませんか? Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _ (ByVal lpBuffer As String, nSize As Long) As Long Sub UserName() Dim myName As String Dim num As Long Dim Rtn As Long myName = String(250, Chr(0)) num = Len(myName) Rtn = GetUserName(myName, num) MsgBox "ユーザー名は" & myName & " です。" End Sub
その他の回答 (3)
- hana-hana3
- ベストアンサー率31% (4940/15541)
Msgbox Application.UserLibraryPath で表示されるので、 変数 = Application.UserLibraryPath で、変数に格納されます。
お礼
ありがとうございます。 参考になりました
- kumadayo
- ベストアンサー率31% (9/29)
お礼
ありがとうございます。 参考になります。
- hana-hana3
- ベストアンサー率31% (4940/15541)
Application.UserName では取得できませんが、 Application.UserLibraryPathを取得して、 ユーザー名=ユーザーフォルダ名になるのを利用して、 C:\Documents and Settings\[アカウント名]\Application Data\Microsoft\AddIns\ から切り出す方法もあります。
お礼
ありがとうございます。私初心者なので、 「Application.UserLibraryPathを取得して」の取得の方法が分からないので、これも教えていただけると嬉しいです。 参考になります。
お礼
ありがとうございます。 参考になりました。