gpt4 book ai didi

vba - 运行 for 循环时出现奇怪的运行时错误 '424'

转载 作者:行者123 更新时间:2023-12-03 00:23:46 26 4
gpt4 key购买 nike

因此,在运行我的 vba 宏的这一部分时,我遇到了一个奇怪的错误。该宏应该遍历人员及其信息的表格,并且在 GUI 中指定的用户所在的位置,在表格排序后将其行设置为“”。输入的数据经过验证,因此用户无法输入一个不存在的值。

这是有问题的代码:

    Set destPpl = Worksheets("People").Range("A2")

Do While (destPpl.value <> I1.value And destPpl.value <> "")
Set destPpl = destPpl.Offset(1, 0)
Loop

For i = 1 To 5
destPpl.value = "" 'debug error occurs here
destPpl = destPpl.Offset(0, 1)
Next i

它将删除第一列内容,但随后不会迭代其余列。所有表格引用都是正确的。我不知道出了什么问题。

感谢您的帮助

最佳答案

更改此:

destPpl = destPpl.Offset(0, 1) 

对此:

Set destPpl = destPpl.Offset(0, 1) 

我的猜测是 destPpl 没有正确声明为范围,否则您在第一次循环时会在该行上收到错误。

发生的情况是第一次循环时,destPpl 从 Range 对象更改为 destPpl.Offset(0, 1) 的值。因此,在第二个循环中,destPpl 没有 .Value 限定符,因为它不再是一个范围。

destPpl 的正确声明是:

Dim destPpl as Range

关于vba - 运行 for 循环时出现奇怪的运行时错误 '424',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35000107/

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