Excel – 从ELSEIF转到嵌套的IF,然后到ELSE

ElseIf numCol1 = numCol2 Then Dim i As Integer For i = 14 To 33 If Cells(i, 6) <> "" And Cells(i, 7) = "" Then MsgBox "Please indicate if subs are allowed.", vbCritical Cancel = True Exit Sub End If Next i Else 'do something 

如果numCol1 = numCol2它是有效的(这只是计算每个列中的值的数量),应该去Else位,但是,我想检查每个旁边的单元格是否填充

例如

  2 2 Col1 Col2 Value1 Value1 Value2 Value2 

这是有效的,每列上面的2是每列中有多less个值的计数

  2 2 Col1 Col2 Value1 Value1 Value2 (blank) (blank) Value2 

这是无效的,即使计数仍然是2,最后一个值2应该在上面的行中

有点混乱,但任何帮助,非常感谢! 谢谢!

您需要为每一行执行有效性testing。 正如你指出的那样,简单地计算每列的值是不可靠的。

在第三列中添加一个公式。 像这样的东西可以工作:

 =IF(A1=B1,0,1) 

复制公式并将其粘贴到需要评估的所有行。

现在总结所有公式的结果。 如果总和大于0,则表示无效行。