• ベストアンサー

Excel VBA Windowsにログインしているユーザ名

Excel VBAの質問です。 ブックを開いているPCのWindowsにログインしているユーザ名を 取得することは可能でしょうか。 可能であれば方法をご教示下さい。

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

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

> ブックを開いているPCのWindowsにログインしているユーザ名 微妙な表現ですね....現在マクロを実行しているユーザー名とするなら  1. MsgBox Environ("USERNAME")  2. API を使うなら GetUserName  3. Excel のユーザー名で良ければ MsgBox Application.UserName などなど。。。API を使う場合は下記のように。 ' // 標準モジュール Private Declare Function GetUserName Lib "ADVAPI32.dll" Alias "GetUserNameA" ( _     ByVal lpBuffer As String, _     ByRef nSize As Long _ ) As Long Private Const MAX_PATH As Long = 256 ' // Windows のログインユーザー名を取得する Public Function GetLoginUserName() As String   Dim sBuffer As String   sBuffer = String$(MAX_PATH, vbNullChar)   If CBool(GetUserName(sBuffer, MAX_PATH) > 0) Then     GetLoginUserName = Left$(sBuffer, InStr(sBuffer, vbNullChar) - 1)   End If End Function Sub 使い方サンプル()   Dim sUserName As String      sUserName = GetLoginUserName()   MsgBox "USER: " & sUserName, vbInformation    End Sub

chiune
質問者

お礼

ご教示いただいた1.が役立ちそうです。 2.は大変勉強になりました。 3.は知っていました。 大変助かりましたし勉強になりました。 ありがとうございました。

関連するQ&A

  • Excel VBA でログインしているアカウント(ユーザー)名取得?

    WIn2000 と WindowXP において、 Excel VBA で、現在、ログインしているアカウント(ユーザー)名を取得して、表示させたいのですが、どうすればいいのですか? 見よう見まねの独学なので初心者の域をでていませんので、宜しくお願いします。

  • エクセルVBA、DOSコマンドでOSログインユーザを取得

    質問させていただきます。 エクセルVBA、DOSコマンドで現在ログインしている OSのユーザを取得する方法をご存知の方いらっしゃい ましたらぜひ教えてください。 よろしくお願い致します。

  • VBAでアカウント名を取得する方法

    VBAで処理したEXCELブックをデスクトップに自動保存しようとしています。VBAで現在作業中のユーザーアカウント名を自動で取得する方法を教えていただきたいのですが。 デスクトップ上にブックを保存するには、パスを記述すればよいのですが、現在PC毎にユーザーアカウントを設定しユーザー名が異なっています。 このため、PC毎にこのユーザー名をデスクトップへのパスに入れ込まなければなりません。毎回キーボードからこのユーザー名を入力する方法もありますが、自動的にユーザー名を取得し、正しいパスを指定する方法を検討しています。 どなたか、VBAでこのユーザー名を取得する方法が有れば教えていただきたいのですが。 よろしくお願いいたします。

  • Excel VBA ログイン中のアカウント名を取得したい

    OS:XP Office:2003 です。 ExcelのVBAで、ログイン中のアカウント名を取得する方法はありますでしょうか? ちなみに、AD環境です。 が、ドメインアドミンのパスワード等は知りません(教えられていない)。 よろしくお願いします。

  • 【VBA】EXCELブックを開かずにシート名を取得したい

    VBAに関する質問です。 EXCELブックを開かずに、シート名を取得する方法を教えてください。 http://officetanaka.net/excel/vba/tips/tips29.htm ↑を見たのですが、具体的にどのようにしたらよいのかわかりません。 よろしくお願いします。

  • エクセルVBA ユーザーフォームの終了について

    エクセルVBAでユーザーフォームを作成しています。 コマンドボタンにVBAマクロを割り当てしているのですが 思うように動いてくれないので質問します。 コマンドボタンをクリックしたら望む動作 1、ワークシートを選択 2、その後、ユーザーフォームを消す。 と言う動作にしたいのですが、2の ユーザーフォームを消す方法、書き方が分かりません どなたか教えていただけないでしょうか 1の動作は以下のように書いています。その後の書き方を お願いします。 Private Sub CommandButton8_Click() ブック名 = "VBA演習" シート名 = "sheet1" Workbooks(ブック名 & ".xls").Worksheets(シート名).Activate End Sub (ユーザーフォームの名前は"テストフォーム"としてます)

  • ログインするときにユーザー名がでない。

    ログインするときにユーザー名がでない。 ログインするときにユーザー名を選択すると思いますが、postgresという名のユーザー名が 選択できません。(他のユーザー名はちゃんと表示もされますし、選択もできます。) 端末からのコマンドでは「su - postgres」でユーザーを変更できますが、 GUIのデスクトップ環境で最初からpostgresユーザーでログインしたいと思っております。 どうかご教示お願い致します。 OSはfedora10 デスクトップ環境はGnome2.24.0です。

  • PHPからWindowsログインユーザー名取得

    はじめまして、tenbinです。 PHPからWindowsログインユーザー名を 取得する方法はありますでしょうか? 会社では必ず、Windowsログインユーザー名を入力するため、 ユーザー名をキーにできれば、わざわざパスワード入力必要なく、 アクセス制御できると思っています。 わかる方がいらっしゃいましたら、教えてください。 よろしくお願いします。 [開発環境] Windows Server 2008 PHP 5.2 Apatch2.2

    • ベストアンサー
    • PHP
  • VBA(エクセル)でアクティブファイル名の取得できますか?

    エクセルでVBAを使用して、自分自身のファイル名を取得できますか?そんなコマンドありますか? (Aと云うエクセルファイルにVBAを仕込み、自分自身がAというエクセルファイル名であることを、認識(取得)させることが出来るでしょうか) かなり素人ですので宜しく教示願います。

  • Windowsログイン時のユーザー名

    Windowsログイン時のユーザー名や、ユーザーフォルダの中のユーザー名が、他人に知られてしまうと、なにか被害はあるのでしょうか? ちなみにローカルアカウントです。 回答よろしくお願いします。

専門家に質問してみよう