首页 > 解决方案 > 如何使用具有多个范围条件的 if 函数

问题描述

我运行一个宏来将数据从工作表复制A5到工作表的单元格,但是如果从到的任何单元格是空白的,我需要获取一个来更新所有字段中的数据。F5ABCXYZA5F5msgbox

我使用以下代码,但出现运行时错误:

Sub Main()

If Range("A5,B5,C5,D5,E5,F5") = Empty Then
    MsgBox "Update data in all fields"
Else 
    MsgBox "Data is appropriate"
End If

End Sub

任何人都可以建议我吗?

标签: excelvba

解决方案


您可以使用命名范围和CountA函数:

Set myRange = Range("A5,B5,C5,D5,E5,F5")
If Application.CountA(myRange) < myRange.Count Then
    MsgBox "Update data in all fields"
Else
    MsgBox "Data is appropriate"
End If

每次尝试只会显示一次消息框。

参考:


推荐阅读