Могу ли я играть тоже? :)
Мне кажется, это может быть самый быстрый способ?
Logic
- В столбце 1 заменить «сегодня» на «|»
- Текст в столбцы в столбце 1 с "|" в качестве разделителя
- В столбце 2 заменить "" на "|"
- Текст в столбцы на Col 2 с "|" в качестве разделителя
Код
Sub Sample()
Dim ws As Worksheet
Set ws = Sheet1
With ws
.Columns(1).Replace What:=" today ", Replacement:="|", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
.Columns(1).TextToColumns Destination:=.Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="|", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
.Columns(2).Replace What:=" ", Replacement:="|", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
.Columns(2).TextToColumns Destination:=.Range("B1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
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
End With
End Sub
Скриншот