gpt4 book ai didi

vba - 用 if 语句嵌套的 while 循环 vba 只打印第一个 "TRUE"值并停止

转载 作者:行者123 更新时间:2023-12-04 20:40:45 25 4
gpt4 key购买 nike

我正在尝试创建一个 Do While 循环,其中包含一个 if 语句。根据 If 语句的 TRUE/FALSE 值,它可以进入另一个(子)Do While 循环,也可以只是循环回到第一个循环并重新开始。

我的问题是,一旦 If 语句返回“TRUE”值,宏就会执行结果,然后停止我想要继续的第一个覆盖 Do While 循环。 (基本上,一旦 If 语句中有 TRUE 值,它就不会为 x+1 生成另一个循环)

提前感谢您的帮助

'x is row in input tab
Dim x As Integer
'z is column in input tab
Dim z As Integer

x = 9
Do While x < 59
If Sheets("Input Tool (Auction Team)").Cells(x, "C") = "N" And Cells(x, "D") = "Yes" Then

'insert row and add values
Sheets("Round Results (Auction Team)").Range("C13").EntireRow.Insert
z = 5

Do While z < 19

Sheets("Input Tool (Auction Team)").Cells(x, z).Copy
Sheets("Round Results (Auction Team)").Cells(13, z - 2).PasteSpecial Paste:=xlPasteValues
Sheets("Round Results (Auction Team)").Cells(14, z - 2).Copy
Sheets("Round Results (Auction Team)").Cells(13, z - 2).PasteSpecial Paste:=xlPasteFormats
Sheets("Round Results (Auction Team)").Cells(14, 2).Copy Cells(13, 2)

z = z + 1

Loop
Else
End If
x = x + 1
Loop
End Sub

最佳答案

将不合格的对象引用与它们的父对象一起限定。

例如,我看到'Cells(x, "D")'。将该范围限定为父工作表,如下所示:

Sheets("Input Tool (Auction Team)").Cells(x,"D")

关于vba - 用 if 语句嵌套的 while 循环 vba 只打印第一个 "TRUE"值并停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34183538/

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