excel 运行时错误440属性为只读-在一个宏上

xqkwcwgp  于 2022-12-05  发布在  其他
关注(0)|答案(3)|浏览(315)

正如标题所说,我有这个错误弹出每次我试图运行脚本。
我很沮丧。几天前还没有发生这种情况,而且其他脚本(不是我写的)运行得很好。我完全不知道如何解决这个问题。有人遇到过类似的问题吗?
从晚上到白天,我写的宏在前几行就停止工作了。

Dim ws As Worksheet
Dim i As Long
Dim maxi As String

  Set GuiAuto = GetObject("SAPGUI")  'Get the SAP GUI Scripting object
  Set App = GuiAuto.GetScriptingEngine 'Get the currently running SAP GUI
  Set Con = App.Children(0) 'Get the first system that is currently connected
  Set session = Con.Children(0) 'Get the first session (window) on that connection
    Set sessioninfo = session.Info

这是我的脚本,我得到的错误行:
Set session = Con.Children(0) 'Get the first session (window) on that connection
下面是截图:

下面是另一个宏中相同代码的屏幕截图,该宏实际正在运行:

我在脚本开始时查看了公共会话,但它们对我不起作用,而且正如我所说的,这是几天前的工作。有人能给我一个建议,告诉我如何检查这两个宏之间的区别,或者我的宏可能发生了什么?

xwmevbvl

xwmevbvl1#

是否尝试过更改变量名?
可能是“ses”之类的。
只是为了确保这不是重写另一个存在的变量。
此外,我会尝试在使用变量之前取消设置它。
这是我通常在启动代码时所做的:

Set Session = Nothing
  Set Con = Nothing
  Set App = Nothing
  Set GuiAuto = Nothing
ev7lccsx

ev7lccsx2#

由于错误,Outlook对象库被签入了引用以及Microsoft Office包。我相信,不知何故,这两个引用相互无效。

cwdobuhd

cwdobuhd3#

我也遇到过同样的问题--尝试将变量“Session”重命名为“SAPSession”--对我来说,它起作用了。

相关问题