【发布时间】:2020-03-11 21:31:22
【问题描述】:
有没有办法用更好的范围声明来缩短这条线?当("C3:I3") 范围之外的一个单元格为空时,我需要它来生成一个 MsgBox,否则运行其余代码。
If IsEmpty(Range("C3")) = True Or IsEmpty(Range("D3")) = True Or IsEmpty(Range("E3")) = True Or IsEmpty(Range("F3")) = True Or IsEmpty(Range("G3")) = True Or IsEmpty(Range("H3")) = True Or IsEmpty(Range("I3")) = True Then
当我使用If IsEmpty(Range("C3:I3")) = True Then 时,代码的行为会有所不同,并且在只有一个单元格为空时不起作用。
【问题讨论】:
-
对于accepted answer,将
= 0替换为= Range("C3:I3").Cells.Count。对于second answer,将= False替换为= True。 -
是的,我确实已经找到了这个答案,但无法让它发挥作用。我会试试你的改动。
-
您的评论对您有所帮助,我意识到
WorksheetFunction.CountA(Range("C3:I3")) < 7 Then在这种情况下会起作用