2016-06-30 4 views
0

У меня есть таблица Excel с несколькими строками.Excel, как найти значение между двумя столбцами в одной строке?

Каждая строка имеет два значения: start и end, которые могут быть расположены в разных столбцах на каждой строке.

Start всегда появляется перед End.

Как я могу использовать Excel для вывода столбцов между началом и концом.

+0

Вы можете добавить несколько примеров данных и желаемых результатов? –

+0

Чтобы перефразировать: вам нужно найти «Старт» и «Конец» в каждой строке и определить, не меньше ли номер столбца «Старт», чем номер «Конец»? –

+0

@ Хинек Бернард Попробую. – bloopiebloopie

ответ

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

0

Это обработает первые строк. Настройте в соответствии с вашими потребностями:

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 
Смежные вопросы