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代码的末尾,另外,在操作已经设置了共享的工作簿时,最好是先取消共享哦。