Разнести текст по ячейкам формулой
Mikez
Дата: Четверг, 19.05.2016, 09:11 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Есть текст разделённый запятыми. Нужно разделить на 3 составляющие: - текст до первой запятой - текст после первой и до следующей - текст после второй запятой до конца Пробел, который после запятой, не нужен. Бьюсь уже час - никак не могу победить. Помогите как это грамотно сделать. Через Данные - Текст по столбцам не подходит. Нужно именно формулами. Спасибо.
Есть текст разделённый запятыми. Нужно разделить на 3 составляющие: - текст до первой запятой - текст после первой и до следующей - текст после второй запятой до конца Пробел, который после запятой, не нужен. Бьюсь уже час - никак не могу победить. Помогите как это грамотно сделать. Через Данные - Текст по столбцам не подходит. Нужно именно формулами. Спасибо. Mikez
Сообщение отредактировал Mikez - Четверг, 19.05.2016, 09:12
Ответить
Сообщение Есть текст разделённый запятыми. Нужно разделить на 3 составляющие: - текст до первой запятой - текст после первой и до следующей - текст после второй запятой до конца Пробел, который после запятой, не нужен. Бьюсь уже час - никак не могу победить. Помогите как это грамотно сделать. Через Данные - Текст по столбцам не подходит. Нужно именно формулами. Спасибо. Автор - Mikez Дата добавления - 19.05.2016 в 09:11
_Boroda_
Дата: Четверг, 19.05.2016, 09:17 |
Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация:
6478
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Так нужно?Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999))
Так нужно?Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999))
_Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Так нужно?Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999))
Автор - _Boroda_ Дата добавления - 19.05.2016 в 09:17
Nic70y
Дата: Четверг, 19.05.2016, 09:32 |
Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация:
2260
±
Замечаний:
0% ±
Excel 2010
такой вариантКод
=ЛЕВБ(A2;ПОИСК(",";A2)-1)
Код
=СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;B2&", ";);",";ПОВТОР(" ";999));999))
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;B2&", "&C2;);", ";;1)
такой вариантКод
=ЛЕВБ(A2;ПОИСК(",";A2)-1)
Код
=СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;B2&", ";);",";ПОВТОР(" ";999));999))
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;B2&", "&C2;);", ";;1)
Nic70y
ЮMoney 41001841029809
Ответить
Сообщение такой вариантКод
=ЛЕВБ(A2;ПОИСК(",";A2)-1)
Код
=СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;B2&", ";);",";ПОВТОР(" ";999));999))
Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;B2&", "&C2;);", ";;1)
Автор - Nic70y Дата добавления - 19.05.2016 в 09:32
Mikez
Дата: Четверг, 19.05.2016, 09:42 |
Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Второй вариант от Nic70y прямо то, что нужно. Благодарю!
Второй вариант от Nic70y прямо то, что нужно. Благодарю! Mikez
Ответить
Сообщение Второй вариант от Nic70y прямо то, что нужно. Благодарю! Автор - Mikez Дата добавления - 19.05.2016 в 09:42
Nic70y
Дата: Четверг, 19.05.2016, 09:59 |
Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация:
2260
±
Замечаний:
0% ±
Excel 2010
3-й столб
ЮMoney 41001841029809
Ответить
Сообщение 3-й столб Автор - Nic70y Дата добавления - 19.05.2016 в 09:59
_Boroda_
Дата: Четверг, 19.05.2016, 10:21 |
Сообщение № 6
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация:
6478
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Точно, прохлопал. Тогда так (опять одинаковая формула для всех столбцов)Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999^(1+(СТОЛБЕЦ(A2)>2))))
Точно, прохлопал. Тогда так (опять одинаковая формула для всех столбцов)Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999^(1+(СТОЛБЕЦ(A2)>2))))
_Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Точно, прохлопал. Тогда так (опять одинаковая формула для всех столбцов)Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999^(1+(СТОЛБЕЦ(A2)>2))))
Автор - _Boroda_ Дата добавления - 19.05.2016 в 10:21
Mikez
Дата: Пятница, 20.05.2016, 03:38 |
Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Немного переделал. Теперь не на 3 ячейки разбирает, а на 4. Но не могу понять как сделать так, чтобы если есть данные для одной или двух ячеек, то в третьей и четвёртой было пусто. В примере выделил жёлтым те ячейки, которые должны быть пустые. Покажите, пожалуйста, как получить именно такой результат. Спасибо.
Немного переделал. Теперь не на 3 ячейки разбирает, а на 4. Но не могу понять как сделать так, чтобы если есть данные для одной или двух ячеек, то в третьей и четвёртой было пусто. В примере выделил жёлтым те ячейки, которые должны быть пустые. Покажите, пожалуйста, как получить именно такой результат. Спасибо. Mikez
Ответить
Сообщение Немного переделал. Теперь не на 3 ячейки разбирает, а на 4. Но не могу понять как сделать так, чтобы если есть данные для одной или двух ячеек, то в третьей и четвёртой было пусто. В примере выделил жёлтым те ячейки, которые должны быть пустые. Покажите, пожалуйста, как получить именно такой результат. Спасибо. Автор - Mikez Дата добавления - 20.05.2016 в 03:38
Michael_S
Дата: Пятница, 20.05.2016, 05:01 |
Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация:
373
±
Замечаний:
0% ±
Excel2016
_Boroda_ , А почему 999? что, между запятыми очень много знаков? или много запятых?Mikez , см. файлКод
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A2;",";ПОВТОР(" ";ДЛСТР($A2)));(СТОЛБЕЦ(A2)-1)*ДЛСТР($A2)+1;ДЛСТР($A2)))
_Boroda_ , А почему 999? что, между запятыми очень много знаков? или много запятых?Mikez , см. файлКод
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A2;",";ПОВТОР(" ";ДЛСТР($A2)));(СТОЛБЕЦ(A2)-1)*ДЛСТР($A2)+1;ДЛСТР($A2)))
Michael_S
Сообщение отредактировал Michael_S - Пятница, 20.05.2016, 05:53
Ответить
Сообщение _Boroda_ , А почему 999? что, между запятыми очень много знаков? или много запятых?Mikez , см. файлКод
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A2;",";ПОВТОР(" ";ДЛСТР($A2)));(СТОЛБЕЦ(A2)-1)*ДЛСТР($A2)+1;ДЛСТР($A2)))
Автор - Michael_S Дата добавления - 20.05.2016 в 05:01
Nic70y
Дата: Пятница, 20.05.2016, 07:42 |
Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация:
2260
±
Замечаний:
0% ±
Excel 2010
вариант:Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1)));ЕСЛИ(СТОЛБЕЦ(A1)=4;ДЛСТР($A2);ПОИСК("/";ПОДСТАВИТЬ($A2&",";",";"/";СТОЛБЕЦ(A1)))-ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1))))));"")
ЕСЛИ(СТОЛБЕЦ(A1)=4;ДЛСТР($A2); или лучше так:Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1)));ЕСЛИ(K2="";ДЛСТР($A2);ПОИСК("/";ПОДСТАВИТЬ($A2&",";",";"/";СТОЛБЕЦ(A1)))-ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1))))));"")
ЕСЛИ(K2="";ДЛСТР($A2); насколько растянете, на столько и будет (файл 18-45)
вариант:Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1)));ЕСЛИ(СТОЛБЕЦ(A1)=4;ДЛСТР($A2);ПОИСК("/";ПОДСТАВИТЬ($A2&",";",";"/";СТОЛБЕЦ(A1)))-ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1))))));"")
ЕСЛИ(СТОЛБЕЦ(A1)=4;ДЛСТР($A2); или лучше так:Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1)));ЕСЛИ(K2="";ДЛСТР($A2);ПОИСК("/";ПОДСТАВИТЬ($A2&",";",";"/";СТОЛБЕЦ(A1)))-ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1))))));"")
ЕСЛИ(K2="";ДЛСТР($A2); насколько растянете, на столько и будет (файл 18-45) Nic70y
ЮMoney 41001841029809
Сообщение отредактировал Nic70y - Пятница, 20.05.2016, 07:51
Ответить
Сообщение вариант:Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1)));ЕСЛИ(СТОЛБЕЦ(A1)=4;ДЛСТР($A2);ПОИСК("/";ПОДСТАВИТЬ($A2&",";",";"/";СТОЛБЕЦ(A1)))-ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1))))));"")
ЕСЛИ(СТОЛБЕЦ(A1)=4;ДЛСТР($A2); или лучше так:Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1)));ЕСЛИ(K2="";ДЛСТР($A2);ПОИСК("/";ПОДСТАВИТЬ($A2&",";",";"/";СТОЛБЕЦ(A1)))-ПОИСК("\";ПОДСТАВИТЬ(","&$A2;",";"\";СТОЛБЕЦ(A1))))));"")
ЕСЛИ(K2="";ДЛСТР($A2); насколько растянете, на столько и будет (файл 18-45) Автор - Nic70y Дата добавления - 20.05.2016 в 07:42
_Boroda_
Дата: Пятница, 20.05.2016, 07:54 |
Сообщение № 10
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация:
6478
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Немного переделал. Теперь не на 3 ячейки разбирает, а на 4.
Так в формуле тогда просто измените 2 на 3 (я еще степень заменил на умножить, суть от этого не поменялась)Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999*(1+(СТОЛБЕЦ(A2)>3))))
Прежде всего потому, что не нужно грузить компьютер, 3 раза считая ДЛСТР. Это на одной формуле ничего страшного, а если их много? Не нравится 999, можно написать 99 или 237. Только 238 не пишите
Немного переделал. Теперь не на 3 ячейки разбирает, а на 4.
Так в формуле тогда просто измените 2 на 3 (я еще степень заменил на умножить, суть от этого не поменялась)Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999*(1+(СТОЛБЕЦ(A2)>3))))
Прежде всего потому, что не нужно грузить компьютер, 3 раза считая ДЛСТР. Это на одной формуле ничего страшного, а если их много? Не нравится 999, можно написать 99 или 237. Только 238 не пишите _Boroda_
К сообщению приложен файл:
_4_1.xlsx
(10.5 Kb)
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Немного переделал. Теперь не на 3 ячейки разбирает, а на 4.
Так в формуле тогда просто измените 2 на 3 (я еще степень заменил на умножить, суть от этого не поменялась)Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(","&$A2;",";ПОВТОР(" ";999));СТОЛБЕЦ(A2)*999;999*(1+(СТОЛБЕЦ(A2)>3))))
Прежде всего потому, что не нужно грузить компьютер, 3 раза считая ДЛСТР. Это на одной формуле ничего страшного, а если их много? Не нравится 999, можно написать 99 или 237. Только 238 не пишите Автор - _Boroda_ Дата добавления - 20.05.2016 в 07:54
Nic70y
Дата: Пятница, 20.05.2016, 08:21 |
Сообщение № 11
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация:
2260
±
Замечаний:
0% ±
Excel 2010
ЕщеКод
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(", "&$A2;",";"\";СТОЛБЕЦ(A1)));999);",";ПОВТОР(" ";(K2<>"")*998+1));999));"")
Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(", "&$A2;",";"\";СТОЛБЕЦ(A1)));999);",";ЕСЛИ(K2="";",";ПОВТОР(" ";999)));999));"")
ЕщеКод
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(", "&$A2;",";"\";СТОЛБЕЦ(A1)));999);",";ПОВТОР(" ";(K2<>"")*998+1));999));"")
Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(", "&$A2;",";"\";СТОЛБЕЦ(A1)));999);",";ЕСЛИ(K2="";",";ПОВТОР(" ";999)));999));"")
Nic70y
ЮMoney 41001841029809
Сообщение отредактировал Nic70y - Пятница, 20.05.2016, 08:25
Ответить
Сообщение ЕщеКод
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(", "&$A2;",";"\";СТОЛБЕЦ(A1)));999);",";ПОВТОР(" ";(K2<>"")*998+1));999));"")
Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР($A2;ПОИСК("\";ПОДСТАВИТЬ(", "&$A2;",";"\";СТОЛБЕЦ(A1)));999);",";ЕСЛИ(K2="";",";ПОВТОР(" ";999)));999));"")
Автор - Nic70y Дата добавления - 20.05.2016 в 08:21
Michael_S
Дата: Пятница, 20.05.2016, 12:08 |
Сообщение № 12
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация:
373
±
Замечаний:
0% ±
Excel2016
Прежде всего потому, что не нужно грузить компьютер, 3 раза считая ДЛСТР.
ДЛСТР -одна из самых легких функций.
Прежде всего потому, что не нужно грузить компьютер, 3 раза считая ДЛСТР.
ДЛСТР -одна из самых легких функций.Michael_S
Ответить
Сообщение Прежде всего потому, что не нужно грузить компьютер, 3 раза считая ДЛСТР.
ДЛСТР -одна из самых легких функций.Автор - Michael_S Дата добавления - 20.05.2016 в 12:08
_Boroda_
Дата: Пятница, 20.05.2016, 12:22 |
Сообщение № 13
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация:
6478
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
И что, будем теперь всовывать ее везде? Собственно, я ответил на вопрос про 999, если не нравится 999, никто не мешает использовать любой другой вариант - у нас демократия
И что, будем теперь всовывать ее везде? Собственно, я ответил на вопрос про 999, если не нравится 999, никто не мешает использовать любой другой вариант - у нас демократия _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение И что, будем теперь всовывать ее везде? Собственно, я ответил на вопрос про 999, если не нравится 999, никто не мешает использовать любой другой вариант - у нас демократия Автор - _Boroda_ Дата добавления - 20.05.2016 в 12:22
Mikez
Дата: Пятница, 20.05.2016, 16:41 |
Сообщение № 14
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Благодарю всех за помощь! Работает на ура!
Благодарю всех за помощь! Работает на ура! Mikez
Ответить
Сообщение Благодарю всех за помощь! Работает на ура! Автор - Mikez Дата добавления - 20.05.2016 в 16:41
Michael_S
Дата: Пятница, 20.05.2016, 16:47 |
Сообщение № 15
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация:
373
±
Замечаний:
0% ±
Excel2016
Собственно, я ответил на вопрос про 999
Не, просто я обычно использую 100 в таких случаях, а 999 кажется много, пугает. А ДЛСТР в данном случае - "проба пера".
Собственно, я ответил на вопрос про 999
Не, просто я обычно использую 100 в таких случаях, а 999 кажется много, пугает. А ДЛСТР в данном случае - "проба пера".Michael_S
Ответить
Сообщение Собственно, я ответил на вопрос про 999
Не, просто я обычно использую 100 в таких случаях, а 999 кажется много, пугает. А ДЛСТР в данном случае - "проба пера".Автор - Michael_S Дата добавления - 20.05.2016 в 16:47
Nic70y
Дата: Пятница, 20.05.2016, 17:21 |
Сообщение № 16
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация:
2260
±
Замечаний:
0% ±
Excel 2010
[offtop]не, конечно 237 мне больше нравится, но 999 красивее.[/offtop]
[offtop]не, конечно 237 мне больше нравится, но 999 красивее.[/offtop] Nic70y
ЮMoney 41001841029809
Ответить
Сообщение [offtop]не, конечно 237 мне больше нравится, но 999 красивее.[/offtop] Автор - Nic70y Дата добавления - 20.05.2016 в 17:21