我发现Excel VBA的解决方法是“运行时错误40036应用程序定义的错误或对象错误”。 它不能解决原始问题,该问题在excel中存在。
我看到的一些响应显示了一个简单的程序,它无法选择屏幕或屏幕上的某个单元。 这是一条简单的….. 1行。
“ nsgbox ActiveSheet.Name”
在出现问题的屏幕上进行测试。 它会失败。
在另一个屏幕上对其进行测试。 除非另一个有问题,否则它会起作用。
解决方法很简单,但可能不完整。
1)用屏幕名称重命名选项卡
2)建立新分页
3)将旧屏幕内容复制到新屏幕内容。
4)将新名称重命名为原始名称。
5)别忘了复制vba对象的格式和屏幕表文本。
这就对了。
解决方法留下了两个未解决的问题。
有点猜测。 Excel似乎已失去屏幕名称与屏幕编号的连接。 使用屏幕编号可能会更好,但是太混乱了。
我在屏幕上还有其他不一致的问题,可能是相关的。 例如,尝试隐藏列时发生已知错误。 更糟糕的是,“出现错误xxxxx”命令不起作用。 我尚未在新屏幕上尝试过该操作。 也可能是该问题的答案。
如果这些都不起作用,并且Excel完全被搞砸了,那么有时我的另一个“常规解决方案”就值得尝试。 如果您的程序已经使用了一段时间,并且有很多重做或删除的部分,并且程序很大,也值得尝试。
1)打开一个新文件
2)创建相同的标签
3)复制所有页面和脚本
4)避免复制对象。 重新创建它们(如果对象很多,复制应该不是主要问题)
5)调试