返回列表 上一主題 發帖

[發問] 如何得知 A.xls恰巧有別人在使用???

本帖最後由 GBKEE 於 2014-6-26 10:53 編輯

回復 1# yangjie


可參考這裡

使 A.xls 為共用活頁簿
  1. Option Explicit
  2. Sub Ex()
  3.    Dim users, A
  4.    users = Workbooks("共用.xls").UserStatus
  5.    A = Application.WorksheetFunction.Index(Application.WorksheetFunction.Transpose(users), 1)
  6.    MsgBox "Users : " & UBound(users) & vbLf & Join(A, vbLf)
  7. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 6# yangjie


   
共用人數(傳回人數n)?
3# 的程式碼,就是啊.
  1. Option Explicit
  2. Const ExFile = "D:\AA.XLS"
  3. Private Sub 設為共用活頁簿()
  4.     Application.DisplayAlerts = False
  5.     With Workbooks.Open(ExFile)
  6.         If Not .ReadOnly And Not .MultiUserEditing Then
  7.             'ReadOnly 屬性          如果物件是以唯讀模式開啟,則傳回 True。唯讀 Boolean
  8.             'MultiUserEditing 屬性  如果活頁簿是以共用清單模式開啟的則為 True。唯讀 Boolean。
  9.             .SaveAs Filename:=.FullName, AccessMode:=xlShared       '存檔為共用模式
  10.             .AutoUpdateFrequency = 5    'AutoUpdateFrequency 屬性   設定以分鐘為單位傳回或設定對共用活頁簿進行自動更新的時間間隔。讀/寫 Long。
  11.             .ChangeHistoryDuration = 30 'ChangeHistoryDuration 屬性 設定共用活頁簿的修訂記錄中所要顯示修訂資訊的天數。讀/寫 Long
  12.         End If
  13.         .Close True
  14.     End With
  15.     Application.DisplayAlerts = True
  16. End Sub
  17. Private Sub 取消設為共用活頁簿()
  18.     Application.DisplayAlerts = False
  19.     With Workbooks.Open(ExFile)
  20.       If Not .ReadOnly And .MultiUserEditing Then .ExclusiveAccess
  21.         'Not .ReadOnly:沒有人開啟這檔案
  22.         '.MultiUserEditing :是共用活頁簿
  23.         .Close True
  24.     End With
  25.     Application.DisplayAlerts = True
  26. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 地上種了菜,就不易長草;心中有善,就不易生惡。
返回列表 上一主題