Страницы: Пред. 1 2
RSS
Разбить столбец на несколько при разных разделителях
 
БМВ,Спасибо! так значительно быстрее, чем делал я (мне такая формула массива даже в голову не залетела бы)
 
Цитата
Михаил Витальевич С. написал:
всего 48 городов
Тезка, привет. Все верно и конечно это сильно ускорит, я просто не стал менять исходные.

У формулы выше есть изъян
Ростов
Ростов-на-Дону

Если использовать весь список городов, то найдет Ростов и все накроется. Тут вариант с использованием только списка с дефисами поможет не только ускорить вычисления, но и сделает их коректными.
Неее, ну можно конечно производить не 2 а 4 замены, но это уже перебор.
Изменено: БМВ - 08.12.2019 14:05:22
По вопросам из тем форума, личку не читаю.
 
Я список отредактировал, оставил только города с дефисами, все работает, спасибо!
 
ЛегкийГолод,
Если вы сделали на листе Список городов столбец с заменой, то попробуйте макрос
Код
Sub Tablica()
Dim iLastRow As Long
Dim n As Long
Dim iLR As Long
Application.ScreenUpdating = False
  iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
 With Worksheets("список_городов")
  iLR = .Cells(.Rows.Count, 1).End(xlUp).Row
     For n = 2 To iLR
      If InStr(1, .Cells(n, 1), "-") <> 0 Then
       Range("A2:A" & iLastRow).Replace what:=.Cells(n, 1), replacement:=.Cells(n, 2)
      End If
     Next
    Range("A2:A" & iLastRow).TextToColumns Destination:=Range("A2"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
        :="-", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, _
        1), Array(6, 1), Array(7, 1)), TrailingMinusNumbers:=True
     For n = 2 To iLR
       If InStr(1, .Cells(n, 2), "_") <> 0 Then
          Range("A2:G" & iLastRow).Replace what:=.Cells(n, 2), replacement:=.Cells(n, 1)
       End If
     Next
 End With
Application.ScreenUpdating = True
End Sub
 
Kuzmich,все отлично разбивает на столбцы, только где город с дефисом почему то пустая ячейка
Изменено: ЛегкийГолод - 08.12.2019 20:38:27
 
ЛегкийГолод,
Заполните полностью столбец В на листе "список городов"
 
Kuzmich,о ,да!  я так понимаю макрос сразу еще и дефис возвращает в название города при разбивке? Круто, спасибо! Теперь есть вариант с макросом и с формулой!
Страницы: Пред. 1 2
Наверх