gpt4 book ai didi

vba - 下标超出范围重命名工作表后出错

转载 作者:行者123 更新时间:2023-12-02 03:43:44 24 4
gpt4 key购买 nike

我做了一个小项目,其中包含 5 个 Excel 工作表,代码工作正常,我也得到了准确的结果,但如果我将工作表从sheet1 重命名为其他名称,我会收到下标超出范围错误。

造成这种情况的原因是什么以及需要采取哪些措施来克服这个问题。请帮忙。

下面是代码

Public  Sub amount_final()

Dim Row1Crnt As Long
Dim Row2Crnt As Long


With Sheets("sheet4")
Row1Last = .Cells(Rows.Count, "B").End(xlUp).Row
End With

Row1Crnt = 2
With Sheets("sheet3")
Row2Last = .Cells(Rows.Count, "B").End(xlUp).Row
End With

最佳答案

代码本身没有任何问题。如果 Excel 无法找到特定工作表,您将收到 下标超出范围 错误,该错误在您重命名后非常明显。例如,如果您将工作表“Sheet3”重命名为“SheetXYZ”,那么 Excel 将无法找到它。

避免此类错误的唯一方法是使用工作表的 CODENAME。查看快照

enter image description here

这里我们有一张名为“重命名前的示例名称”的工作表

所以考虑这段代码

Sheets("Sample Name before Renaming").Range("A1").Value = "Blah Blah"

相同的代码可以写为

Sheet2.Range("A1").Value = "Blah Blah"

现在,无论您重命名工作表多少次,上面的代码都将始终有效:)

HTH

席德

关于vba - 下标超出范围重命名工作表后出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9923439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com