Я явно не эксперт Эксель и даже не продвинутый пользователь. Я вообще не пользователь :-)
Немного простая, но и сложная задача.
Столбец А предоставлен следующими смешанными данными данными: Фамилия Имя Отчество, либо просто Имя, либо Фамилия Имя. Надо что бы в столбе Б сначала было имя, а затем фамилия. Отчество бы убиралось. А в тех столбцах где просто ИМЯ также переносилось просто имя
Спасибо всем за помощь. А вы не подскажите, как применить эту формулу все сразу к 20 000 ячейкам столбца Б? А то перетаскивать ползунком, копируя формулы вниз, очень тяжело. Очень часто все подлагивает и сбивается.
Function ИФ(t$)
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[А-Яа-яЁё-]+"
If .Execute(t).Count > 1 Then
ИФ = .Execute(t)(1) & " " & .Execute(t)(0)
Else
ИФ = .Execute(t)(0)
End If
End With
End Function
Наиболее рациональный путь ввода формулы в большую область (например, B1:B20000).
набираете в области имен (там, где виден адрес текущей ячейки) B1:B20000 и нажимаете Enter. Нужный диапазон ячеек должен выделиться.
переходите в область ввода формул (или нажимаете F2) и вводите нужную формулу для первой ячейки диапазона (B1). После ввода формулы нажимаете Ctrl+Enter