excel - 如何通过 VBA 代码修复仅在 Excel 的共享模式下发生的运行时错误 400

标签 excel vba userform

我真的不知道是什么导致了错误 400。
下面的代码在正常模式下运行得非常好,但是一旦我在共享模式下启用我的 excel 并尝试使用用户表单,它就会给我 VBA 400。

我在这里尝试做的是更改形状的文本并禁用其 OnAction 事件,一旦用户表单显示给用户。这样访问同一文件的另一个用户就会知道有人正在使用“用户表单”输入数据。

Dim shp As Shape
For Each shp In ActiveSheet.Shapes
    If shp.TextEffect.Text = "Sort Customer" Then
        shp.OnAction = ""
        shp.TextEffect.Text = "Wait!!!"
    End If
Next

问:有没有办法自动发布任何用户在共享 Excel 中所做的更改。

最佳答案

我怀疑您的代码属于 Excel 共享模式的众多限制之一,如 here 所述(请参阅不支持的功能),包括

Using a data form to add new data
Using drawing tools
Inserting or changing pictures or other objects



enter image description here

(请注意,由于它的格式,我无法在我的答案中轻松复制不支持的功能列表。)

关于excel - 如何通过 VBA 代码修复仅在 Excel 的共享模式下发生的运行时错误 400,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57607254/

相关文章:

excel - Excel 中对 Sharepoint 上其他工作簿的单元格引用/公式不会更新值

vba - 搜索列,复制序列号并粘贴到重复列vba

Excel - 如何连接到另一个 Excel 文件?

vba - 防止在单元格中更改行时重新格式化字符

excel - 无模式表单上文本框输入的验证消息会中断文本选择

VBA MSFORMS 与控件 - 有什么区别

c# - 有没有什么方法可以像在 C# 中那样使用不变区域性在 Excel 中格式化日期单元格

VBA Combobox 和 Listbox 通用父类(super class)

vba - Excel VBA 类型不匹配 (13)

Excel 2013 模态 VBA 用户窗体在用户窗体可见时更改 Activeworkbook