VBA精彩代码分享-4

VBA设置/取消工作簿共享是很常用的一个功能,那么如何用代码实现呢?

设置共享

  If Len(ActiveWorkbook.FullName) = 0 Then
  MsgBox "文件没有保存"
  Exit Sub
  End If
  Application.DisplayAlerts = False
  ActiveWorkbook.ProtectSharing Filename:=ActiveWorkbook.Name
  Application.DisplayAlerts = True

取消共享

  On Error Resume Next
  Application.DisplayAlerts = False
  MsgBox ActiveWorkbook.MultiUserEditing
  ActiveWorkbook.UnprotectSharing
  ActiveWorkbook.ExclusiveAccess
  Application.DisplayAlerts = True

特别需要注意的是,当工作簿设置了共享之后,EXCEL有一些功能就可能会被限制使用不了了,比如VBA工程的访问修改,还有很多变灰色的功能(如下图),这时候就算用VBA也无法调用这些变灰色的功能了,所以最好是把设置共享放到VBA代码的末尾,另外,在操作已经设置了共享的工作簿时,最好是先取消共享哦。

原文地址:https://www.cnblogs.com/JTCLASSROOM/p/10881919.html