如何在Excel中的选择案例中使用多个条件

时间:2016-02-18 21:10:14

标签: excel excel-vba vba

我想修改以下选择案例,以使用G11和G13中的值在C17中放置一个值,以及在A17中放置一个值。它目前只使用G11在A17中输入一个值。如何修改它以查看G13并在C17中放置一个值?

例如,如果G11中的值介于.01和4999.99之间,而G13中的值是“Inspector”,则C17中的值为“100”。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim KeyCells As Range
    Set KeyCells = Range("G11")

        If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then

            Select Case Range("G11").Value
                Case Is < 0.01
                    Range("A17").Value = ""
                Case 0.01 To 4999.99
                    Range("A17").Value = "$0 - $4,999.99"
                Case 5000 To 9999.99
                    Range("A17").Value = "$5,000 - $9,999.99"
                Case 10000 To 19999.99
                    Range("A17").Value = "$10,000 - $19,999.99"
                Case 20000 To 34999.99
                    Range("A17").Value = "$20,000 - $34,999.99"
                Case 35000 To 49999.99
                    Range("A17").Value = "$35,000 - $49,999.99"
                Case 50000 To 99999.99
                    Range("A17").Value = "$50,000 - $99,999.99"
                Case 100000 To 149999.99
                    Range("A17").Value = "$100,000 - $149,999.99"
                Case 150000 To 199999.99
                    Range("A17").Value = "$150,000 - $199,999.99"
                Case Is >= 200000
                    Range("A17").Value = "$200,000 and up"
            End Select
        End If
    End Sub

1 个答案:

答案 0 :(得分:3)

根据我的评论

Select Case True
    Case Range("G11")>.01 and Range("G11")<4999.99 and Range("G13") = "Inspector"
        *Do your code*
   ...

将Select Case设为true,然后在Case行中,您可以使用AndOr运算符。

但是你可以看到,这就变成了IF / ElseIF / Else的情况。