Excel 2010 如果在多行中查找

Excel 2010 如果在多行中查找

我正在尝试执行以下操作:

one sheet |   in another sheet
-----------------------------------
 C        |    R     S
448       |   497   517
          |   526   542
453       |   812   814

我可以检查 C 是否位于 R 和 S 所有行中的任意值之间,然后如果为真则执行运算吗?

例如 if=if(C(1)<=R(:)&&C(1)>=S(:))

答案1

这很笨重和尴尬,但它有效,只需改变范围和do stuff

有人可能会发现并使其变得更好,以便在满足最终条件后停止检查。

Option Explicit

Sub sks()
    Dim Rng, Rng2, Rng3, c1, c2, c3 As Range

    Set Rng = Sheets("Sheet1").Range("A:A")
    Set Rng2 = Sheets("Sheet2").Range("A:A")
    Set Rng3 = Sheets("sheet2").Range("B:B")

    For Each c1 In Rng

        If c1.Value <> "" Then

            For Each c2 In Rng2

                If c2.Value <> "" Then

                   If c1.Value >= c2.Value Then

                      If c1.Value <= c2.Offset(0, 1).Value Then

                          'do stuff c1.Offset(0, 1).Value = "yes"

                       Else: End If
                    Else: End If
                Else: End If

             Next c2

          Else
            Exit Sub
        End If
    Next
End Sub

相关内容