【发布时间】:2013-07-04 07:03:16
【问题描述】:
我试图找到共享工作簿的代码并用 Visual Basic 取消共享,但我没有找到,有人知道它是否可能吗?
另一件事是保存时共享工作簿,将工作簿更新给所有用户... 问题是如果我用 Visual Basic 代码保存它,工作簿会更新给其他用户吗?
我正在编写一个按钮,当单击它时(共享工作簿 > 填充单元格 > 保存并取消共享它)。
【问题讨论】:
标签: excel vba networking
我试图找到共享工作簿的代码并用 Visual Basic 取消共享,但我没有找到,有人知道它是否可能吗?
另一件事是保存时共享工作簿,将工作簿更新给所有用户... 问题是如果我用 Visual Basic 代码保存它,工作簿会更新给其他用户吗?
我正在编写一个按钮,当单击它时(共享工作簿 > 填充单元格 > 保存并取消共享它)。
【问题讨论】:
标签: excel vba networking
我当然同意 pnuts 和他提供的链接:共享工作簿是可怕的。
不过,为了回答这个问题,如果您在 Excel 中录制宏,您将在共享工作簿时看到如下代码。
Sub Macro1()
Workbooks.Add
With ActiveWorkbook
.KeepChangeHistory = True
.ChangeHistoryDuration = 30
End With
ActiveWorkbook.SaveAs Filename:= _
"F:\Documents and Settings\student\My Documents\Book1.xlsx", FileFormat:= _
xlOpenXMLWorkbook, AccessMode:=xlShared
ActiveWorkbook.ExclusiveAccess
End Sub
(如果您还不知道如何在 Excel 中录制宏,那么我建议您花时间去了解一下 - 它非常有用,尤其是在您刚开始使用 VBA 时。)
如果您将此代码复制到 VB 编辑器并单击某些单词(特别是SaveAs)并按 F1,您将进入帮助系统。
从这个录制的宏中,我推测从工作簿中删除 Shared 只是将 SaveAs 与 AccessMode 一起使用而不是 xlShared(或省略)的情况。毕竟,这是我们手动共享或取消共享工作簿时出现的对话框/选项。
但是,需要强调的是,我并不提倡使用共享工作簿。
【讨论】: