Excel,如何在一行中找到两列之间的值?

时间:2016-06-30 13:13:35

标签: excel

我有一个包含多行的Excel电子表格。

每行有两个值startend,它们可以位于每行的不同列上。

Start始终显示在End之前。

如何使用Excel在开始和结束之间输出列。

2 个答案:

答案 0 :(得分:0)

这将处理第一个 10 行。根据您的需求进行调整:

Sub WhatsInBetween()
    Dim i As Long, st As String, en As String
    Dim M As Long, N As Long
    st = "start"
    en = "end"

    With Application.WorksheetFunction
        For i = 1 To 10
            N = .Match(st, Rows(i), 0)
            M = .Match(en, Rows(i), 0)
            If M = N + 1 Then
                MsgBox "for row " & i & " nothing between"
            Else
                MsgBox "for row " & i & " something between"
            End If
        Next i
    End With
End Sub

答案 1 :(得分:0)

如果您被允许使用任何列,则此处仅为公式方法 只需将此公式放在您想要结果的任何列中,然后将其拖放。

=IF(MATCH("End",1:1,0)-MATCH("Start",1:1,0)>1,
MATCH("End",1:1,0)-MATCH("Start",1:1,0)-1&" cells between Start and End",
"Nothing between Start and End")

以下是我使用的数据和结果:

enter image description here