问题描述
我遇到了一个我无法弄清楚的非常奇怪的问题。
总而言之,我有 2 个 Excel 文件。一个“MyMacro.xlsm”文件和一个“MyPortfolio.xlsx”文件。 “MyMacro.xlsm”旨在对“MyPortfolio.xlsx”进行更改。稍后我将调整宏以接受 AA 中的参数,以便我可以针对多个单独的文件运行它。但现在我只是想让它自己运行。
更奇怪的是,当我自己手动打开文件时,宏可以完美运行。没有错误,每次都有效。
但是,当我使用 Automation Anywhere 打开文件时,它总是失败。在 AA 中,它给了我这个错误:
Cannot run the macro 'ConvertTextToNumber'. The macro may not be available in this workbook or all macros may be disabled.
发生该错误后,如果我手动转到已打开的“MyMacro.xlsm”文件并尝试运行宏,它会失败并出现此错误:
Run-time error '9': Subscript out of range
如果我关闭 excel 文件并在之后再次手动打开它们,它会再次工作。
所以一定有什么东西被破坏了,因为 AA 打开了这些文件。有没有人知道什么可能导致该错误?有没有办法在不破坏它的情况下运行该宏?或者我是否遗漏了 Automation Anywhere 如何使用宏的某些内容?我假设会话无法识别单独的打开文件,但我不知道如何解决这个问题。
为了更清楚,这里是我正在运行的两个超级简单的宏。
Sub ConvertTextToNumber()
Workbooks("My Portfolio.xlsx").Sheets("Sheet1").Range("A2:A2000").NumberFormat = "General"
End Sub
Sub SortSmallestToLargest()
Workbooks("My Portfolio.xlsx").Sheets("Sheet1").Range("A2:BT2000").sort Key1:=Workbooks("My Portfolio.xlsx").Sheets("Sheet1").Range("A:A"),Order1:=xlAscending
End Sub
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)