|
Вытащить из ячейки данные через разделитель и выдать в табличном виде
|
|||
---|---|---|---|
#18+
Нужно из ячейки, в которой через разделитель перечислены по порядку данные, вытащить данные и оформить в табличном виде построчно, сохраняя общую структуру таблицы (поля заказ, статус). См. файл. Оригинальные данные для обработки - см. Лист "Оригинал" Нужно сделать - см. Лист "Результат". Я подготовил следующий алгоритм: шаг - функция в XLS - функция в VBA 1 шаг: Вычисляем полную длина символов в ячейке (А2) - ДЛСТР() - LEN() 2 шаг: Получаем данные в ячейке без разделителя - выкидываем разделитель - ПОДСТАВИТЬ() - SUBSTITUTE() 3 шаг: Узнаем длину символов в ячейке без разделителей - ДЛСТР() - LEN() 4 шаг: Вычисляем арифметически кол-во разделителей в ячейке (по сути кол-во итераций) 5 шаг: Ставим цикл 7 шаг: Поиск номера символа соответствующий разделителю (в нашем случае $) - ПОИСК() - SEARCH() 8 шаг: Возвращает кол-во указанных символов, начиная с первого - ЛЕВСИМВ() - LEFT() 9 шаг: зацикливаем только нужно сдвиг разделителя предусмотреть вроде бы в XLS получил что нужно для первого значения и "ручками" для последующих. в ручной макрос занес но как назначить переменные, массивы и цикл - не зна Мейби кто подскажет, хотя бы структуру макроса, детали я сам смогу дожевать и выложить в ветку. Заранее большое спс всем откликнувшимся. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2015, 15:45 |
|
Вытащить из ячейки данные через разделитель и выдать в табличном виде
|
|||
---|---|---|---|
#18+
Очень похоже на выбор данных из строки ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2015, 15:58 |
|
Вытащить из ячейки данные через разделитель и выдать в табличном виде
|
|||
---|---|---|---|
#18+
Vitas1741 шаг: Вычисляем полную длина символов в ячейке (А2) - ДЛСТР() - LEN() 2 шаг: Получаем данные в ячейке без разделителя - выкидываем разделитель - ПОДСТАВИТЬ() - SUBSTITUTE() 3 шаг: Узнаем длину символов в ячейке без разделителей - ДЛСТР() - LEN() 4 шаг: Вычисляем арифметически кол-во разделителей в ячейке (по сути кол-во итераций) Код: vbnet 1.
Vitas1745 шаг: Ставим цикл 7 шаг: Поиск номера символа соответствующий разделителю (в нашем случае $) - ПОИСК() - SEARCH() 8 шаг: Возвращает кол-во указанных символов, начиная с первого - ЛЕВСИМВ() - LEFT() 9 шаг: зацикливаем только нужно сдвиг разделителя предусмотреть Код: vbnet 1. 2. 3. 4. 5.
Есссно коды - это только шаблоны, требующие обвязки и доработки. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2015, 16:13 |
|
|
start [/forum/topic.php?fid=60&tid=2155824]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 147ms |
0 / 0 |