我正在尝试从其他工作表中提取信息,然后检查以确保此工作表中的2个单元格不相同。这是一个随机的膳食计划,但在同一天你不能吃相同的蛋白质(给你一点背景)。我有代码检查,看看它是否可以在用餐期间使用,如果它可以被放入下一张表。这是午餐和晚餐。它会在do循环中被捕获,直到循环,我不知道如何解决这个问题。
如果您需要更多信息,我可以提供截图,如果这没有意义。
Do
RandNumLunch = Int((10 - 2 + 1) * Rnd + 2)
Do Until Sheet2.Cells(RandNumLunch, 6) = "Yes"
If Sheet2.Cells(RandNumLunch, 6) = "Yes" Then
Else
RandNumLunch = Int((10 - 2 + 1) * Rnd + 2)
End If
Loop
If Sheet2.Cells(RandNumLunch, 6) = "Yes" Then
Sheet3.Cells(3, 2) = Sheet2.Cells(RandNumLunch, 1)
End If
RandNumDinner = Int((10 - 2 + 1) * Rnd + 2)
Do Until Sheet2.Cells(RandNumDinner, 7) = "Yes"
If Sheet2.Cells(RandNumDinner, 7) = "Yes" Then
Else
RandNumDinner = Int((10 - 2 + 1) * Rnd + 2)
End If
Loop
If Sheet2.Cells(RandNumDinner, 7) = "Yes" Then
Sheet3.Cells(4, 2) = Sheet2.Cells(RandNumLunch, 1)
End If
Loop Until Sheet3.Cells(4, 2) <> Sheet3.Cells(3, 2)
答案 0 :(得分:0)
在最后的If..Else
中,您使用RandNumLunch
,您应该使用RandNumDinner
。这意味着在两者之间发生的任何事情,您将Sheet3.Cells(3, 2)
和Sheet3.Cells(4, 2)
设置为相同的值,因此最终检查永远不会成立。