У меня есть следующее в ячейке A1:
NEW ORLEANS (0-0) at GREEN BAY (0-0)
Я бы хотел, чтобы формула была помещена в ячейку B1 "НОВЫЙ ОРЛЕАН" и в ячейку C1 "GREEN BAY".
У меня есть следующее в ячейке A1:
NEW ORLEANS (0-0) at GREEN BAY (0-0)
Я бы хотел, чтобы формула была помещена в ячейку B1 "НОВЫЙ ОРЛЕАН" и в ячейку C1 "GREEN BAY".
Итак, если у вас была эта ячейка в A1, то в B1:
=LEFT(A1, FIND("(", A1)-2)
И это в С1:
=MID(A1, FIND(")", A1) + 4, LEN(A1)-FIND(")", A1)-9)
Обратите внимание, что это очень зависит от того, какой образец, который вы дали, представлял макет текста в других ячейках. Он основан на поиске скобок в строке. На самом деле я только что понял, что он, вероятно, сломается, если цифры во втором (0-0) перейдут в двойные цифры. Чтобы учесть это, вам нужно будет найти второй набор символов, чтобы определить длину вызова Mid (). Если честно, если бы это была моя проблема, то я думаю, что я просто написал бы макрос VBA, используя split.
Так что через VBA я бы сделал что-то подобное. Добавьте эти две функции:
Function GetFirstTeam()
Application.Volatile
GetFirstTeam = Trim(Split(ActiveCell.Offset(0, -1), "(")(0))
End Function
Function GetSecondTeam()
Application.Volatile
GetSecondTeam = Trim(Split(Split(ActiveCell.Offset(0, -2), " at ")(1), "(")(0))
End Function
Тогда в B1:
=GetFirstTeam()
И в С1:
=GetSecondTeam()
Чтобы получить первую команду:
=LEFT(A1,FIND("(",A1)-2)
Чтобы получить вторую команду:
=MID(A1,FIND(" at ",A1)+4,FIND("(",A1,FIND(")",A1))-FIND(" at ",A1)-5)