Разделение текста в ячейке каждый раз, когда он находит специальный символ в vba, и вставляет значения, начиная с определенной ячейки и каждой строки ниже этой - PullRequest
0 голосов
/ 18 ноября 2018

У меня есть эта строка текста, она может быть больше, вот пример:

2,01 г 10k gold wedding band ~ 15xps3 games ~ 14.01 14k пасьянс с бриллиантом с .30pt diamond ~ 2ps3 games ~ 14dvds

Каждый раз, когда он видит, например, «~», я хочу, чтобы он вставлял значения в ячейку g34.Если имеется более одной строки, я хочу, чтобы она продолжала вставлять значения в g35, g36, g37 и т. Д., Пока список не будет исчерпан.

Я хочу, чтобы это было сделано в VBA, чтобы я мог присоединить егона кнопку.Я не хочу делать это с помощью текста в столбцы.

Результат должен выглядеть следующим образом:

2.01g 10k gold wedding band
15xps3 games
14.01 14k diamond solitaire with .30pt diamond
2ps3 games 
14dvds

Любая помощь Сильно ценится ... Я могу найти аналогичные решения, но большинство хотятвставить его в новые столбцы.

1 Ответ

0 голосов
/ 18 ноября 2018

Рассмотрим:

Sub parse()
    Dim s As String
    s = "2.01g 10k gold wedding band~15xps3 games~14.01 14k diamond solitaire with .30pt diamond~2ps3 games~14dvds"
    arr = Split(s, "~")
    Range("G34").Resize(UBound(arr) + 1, 1) = Application.Transpose(arr)
End Sub

enter image description here

...