需要If语句来检查单元格的范围

时间:2013-08-21 21:40:18

标签: excel-vba vba excel

我有一个子程序,它调用特定位置的另一个子程序并创建数据透视表。我刚刚意识到如果原始数据中没有特定位置的数据,宏就会崩溃。我想设置一些If then语句,这样它就不会尝试运行特定的Call语句,除非该位置存在。这是子程序:

Sub EachLocationPivot()

    Call LocationPivot("Barker Library")
    Call LocationPivot("Dewey Library")
    Call LocationPivot("Hayden Library")
    Call LocationPivot("Music Library")
    Call LocationPivot("Rotch Library")

    End Sub

位置名称信息可在名为“原始数据”的工作表上的EF4:EF500范围内找到。因此,如果该范围内不存在“音乐库”位置,我不希望运行Call LocationPivot(“音乐库”)这一行。然后它应该转到下一个Call行并执行相同的测试但是对于该位置名称。

1 个答案:

答案 0 :(得分:0)

这非常接近您的需求。 c probabaly应该是变种...

With Worksheets("Raw Data").Range("EF4:EF500")
    Set c = .Find("Barker Library")
    If Not c Is Nothing Then
        Call LocationPivot("Barker Library")
    End If
End With