gpt4 book ai didi

vba - 设置范围语句错误

转载 作者:行者123 更新时间:2023-12-03 00:58:40 24 4
gpt4 key购买 nike

有人可以帮忙解决这个代码吗?它在第 6 行抛出错误 (Set rng = Sheet3.Range(Cells(1,i),Cells(1,j)).Select) 但我不知道如何修复它.

Public Sub CommandButton1_Click()
Dim i As Integer
i = 3
Dim j As Integer
j = 5
Set Rng = Sheet3.Range(Cells(1, i), Cells(1, j)).Select
lAnswer = Application.WorksheetFunction.Sum(Rng)
Sheet1.Cells(5, 13).Value = lAnswer
End Sub

最佳答案

您已收到语法问题的答案,但我还要提醒您注意使用两个 Range.Cells properties 时出现的孤立单元格引用。用于定义 Range object 的范围。具体来说,他们的Range .Parent property是任意的。

Public Sub CommandButton1_Click()

Dim i As Long
Dim j As Long
Dim Rng As Range
Dim lAnswer As Double

i = 3
j = 5
with Sheet3
Set Rng = .Range(.Cells(1, i), .Cells(1, j))
end with
lAnswer = Application.WorksheetFunction.Sum(Rng)
Sheet1.Cells(5, 13).Value = lAnswer

End Sub

这一行也可以写成,

Set Rng = Sheet3.Range(Sheet3.Cells(1, i), Sheet3.Cells(1, j))

...但是 With...End With statement把它清理干净。如果不指定 .Cells 的父级,您将面临尝试在 Sheet3 上定义包含另一个工作表中的单元格的范围的风险。我意识到这是一个命令按钮,并且任意单元格范围父系应该隐式地是包含单击的按钮的工作表,但您正在为 .Range 定义 Sheet3,因此良好的编码实践要求您显式地完成练习将 Sheet3 定义为嵌套 .Cells 的父级。

关于vba - 设置范围语句错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31348300/

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