我有一个宏,我们使用多年并在Excel 2010中运行良好。但是,现在我们升级到Excel 2013,它给出了运行时错误9。 调试后,以下代码部分将突出显示:
Sheets(1).Copy after:=Workbooks(mfname).Sheets(3)
我已经知道这个错误必须对范围的可用性做些什么。问题是这是否有任何简单的解决方法?相关的代码段:
Workbooks.Add
mfname= ActiveWorkbook.Name
Workbooks.Open template
template_name = ActiveWorkbook.Name
Sheets(1).Copy after:=Workbooks(mfname).Sheets(3)
Workbooks(mfname).Activate
Sheets(1).Delete
Sheets(1).Delete
Sheets(1).Delete
lapok = Sheets.Count
感谢您的帮助!
答案 0 :(得分:0)
我不是VBA专家,但谷歌搜索很少说错误9是下标超出范围错误。
这可能来自Sheets(3)
。我还记得excel在这些版本中默认打开了3张。也许现在情况并非如此,并导致问题。