関数・メソッド

共有ファイルを開いているユーザー情報を取得する【UserStatusプロパティ】【ExcelVBA】

構文

Object.UserStatus (index1 , index2)

index1・・・各ユーザーを示すインデックス値を記入
index2・・・1→ユーザー名 / 2→ユーザーが開いた日付・時刻 / 3→ファイルの種類を取得

Workbookオブジェクトで指定した共有ファイルを開いているユーザーを取得します。
Varinat型の二次元配列を返します。(値の取得のみ可能です)

UserStatusプロパティのサンプルコード

Public Sub sample()
    '■共有ファイルを開く
    Dim wb As Workbook
    Set wb = Workbooks.Open("C:\VBA\sample.xlsx")
    
    '■ユーザー情報取得
    Dim i As Long
    For i = 1 To UBound(wb.UserStatus)
        Debug.Print wb.UserStatus(i, 1) 'ユーザー名 user
        Debug.Print wb.UserStatus(i, 2) '開いた日付  9/27/2021 11:46
        Debug.Print wb.UserStatus(i, 3) '種類        1(排他)2(共有)
    Next i
              
    '■共有ブックを閉じる
    wb.Close
    Set wb = Nothing
End Sub

注意点

  • 読み取り専用で開いたブックの場合、エラーが発生します。
    実行時エラー ‘1004’:アプリケーション定義またはオブジェクト定義のエラーです。
  • UserStatusプロパティはOption Base1にかかわらず、1からスタートです。

関連記事

コメント

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