Мне нужно разобрать строку с полями разной длины на отдельные столбцы. У меня есть следующий ряд данных.
Используя формулы, я хотел бы заполнить столбцы F, G, H и I различными полями разделов в столбце D. Я создал текущий контент вручную, но хотел бы сделать это с помощью формул.
Большую часть данных я могу воспроизвести правильно, но у меня возникли проблемы со столбцом G, поскольку эти данные иногда содержат два символа (например, 01, 03), а иногда — пять символов (например, 01-16).
решение1
Это простой способ сделать это, предполагая, что формат остается чем-то [пробелом], чем-то [пробелом] и т. д. Хитрость в том, чтобы сосредоточиться на пробелах (разделителях), а не на данных (тексте).
столбец F =left($d6,find(" ",$d6)) здесь используется find для определения того, сколько нужно вытащить.
Столбец g =СРЗНАЧ($D6,1+ДЛСТР(F6),НАЙТИ(" ",$D6,1+ДЛСТР(F6))-ДЛСТР(F6))
Здесь используется середина, начинающаяся после столбца f, а затем ищущая второй пробел
- Столбец h =СРЗНАЧ($D6,1+ДЛСТР(F6&G6),НАЙТИ(" ",$D6,1+ДЛСТР(F6&G6))-1-ДЛСТР(F6&G6))
Это следует той же схеме. Используйте середину и начните за пределами предыдущих 2 столбцов данных, найдите следующий пробел, и разница будет в том, сколько использовать.
Просто скопируйте это.