Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Преобразовать числа в виде диапазонов в числа через запятую - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Преобразовать числа в виде диапазонов в числа через запятую
Volkofx Дата: Пятница, 17.03.2017, 16:32 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 1 ±
Замечаний: 20% ±

Excel 2013
Друзья! Добрый вечер и заранее хороших выходных. Столкнулся с проблемой, которую не могу решить. Имею ячейки с текстом где описываются инструкция к показателям, соответственно хочется для удобства эту инструкцию подставить напротив каждого показателя, который описан в инструкции. Проблема в том, что некоторые показатели там указаны через диапазон как пример (1 - 5). У меня получилось раскидать эту инструкцию по другим показателям, там где указаны обычные номера через запятую. Вопрос, возможно ли раскидать эту инструкцию и по показателям которые указаны диапазоном в инструкции. Условно если у меня написано с 1-3, то продублировать ее и для 1 и для 2 и для 3 показателя? ну или хотя бы формулу подскажите, которая такие бы диапазоны преобразовала в ячейку наподобии (1, 2, 3), а там я бы сам уже надеюсь справился бы. Пример с моими наработками приложен.
К сообщению приложен файл: 6074170.xlsx (11.6 Kb)
 
Ответить
СообщениеДрузья! Добрый вечер и заранее хороших выходных. Столкнулся с проблемой, которую не могу решить. Имею ячейки с текстом где описываются инструкция к показателям, соответственно хочется для удобства эту инструкцию подставить напротив каждого показателя, который описан в инструкции. Проблема в том, что некоторые показатели там указаны через диапазон как пример (1 - 5). У меня получилось раскидать эту инструкцию по другим показателям, там где указаны обычные номера через запятую. Вопрос, возможно ли раскидать эту инструкцию и по показателям которые указаны диапазоном в инструкции. Условно если у меня написано с 1-3, то продублировать ее и для 1 и для 2 и для 3 показателя? ну или хотя бы формулу подскажите, которая такие бы диапазоны преобразовала в ячейку наподобии (1, 2, 3), а там я бы сам уже надеюсь справился бы. Пример с моими наработками приложен.

Автор - Volkofx
Дата добавления - 17.03.2017 в 16:32
bmv98rus Дата: Пятница, 17.03.2017, 19:48 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4112
Репутация: 769 ±
Замечаний: 0% ±

Excel 2013/2016
Volkofx,
Допустим вашу многоуровневую формулу можно упростить
Код
=IFERROR(INDEX(F:F;LOOKUP(2;1/SEARCH(" "&A2&",";SUBSTITUTE($F$2:$F$20;" ";", "));ROW($F$2:$F$20)));"другое")

Но вот далее сложно. даже разделитель есть такой "-" (45), а есть такой "–" (150).


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
СообщениеVolkofx,
Допустим вашу многоуровневую формулу можно упростить
Код
=IFERROR(INDEX(F:F;LOOKUP(2;1/SEARCH(" "&A2&",";SUBSTITUTE($F$2:$F$20;" ";", "));ROW($F$2:$F$20)));"другое")

Но вот далее сложно. даже разделитель есть такой "-" (45), а есть такой "–" (150).

Автор - bmv98rus
Дата добавления - 17.03.2017 в 19:48
Volkofx Дата: Суббота, 18.03.2017, 15:14 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 1 ±
Замечаний: 20% ±

Excel 2013
Volkofx,
Допустим вашу многоуровневую формулу можно упростить

=ЕСЛИОШИБКА(ИНДЕКС(F:F;ПРОСМОТР(2;1/ПОИСК(" "&A2&",";ПОДСТАВИТЬ($F$2:$F$20;" ";", "));СТРОКА($F$2:$F$20)));"другое")

Но вот далее сложно. даже разделитель есть такой "-" (45), а есть такой "–" (150).


Спасибо за оптимизацию формулы! Я на самом деле из-за слабых познаний особо не смотрю на длину формулы. У меня есть формула на 1700 символов, если не ошибаюсь, вот там жестко, но главное работает) А по поводу диапазонов, допустим я их предварительно привожу к одному виду - к символу 45 (-). В таком случае возможно раскидать, учитывая что диапазоны могут быть вида 1-19, 21-55 и тп? А есть идеи в каком направлении работать?)
 
Ответить
Сообщение
Volkofx,
Допустим вашу многоуровневую формулу можно упростить

=ЕСЛИОШИБКА(ИНДЕКС(F:F;ПРОСМОТР(2;1/ПОИСК(" "&A2&",";ПОДСТАВИТЬ($F$2:$F$20;" ";", "));СТРОКА($F$2:$F$20)));"другое")

Но вот далее сложно. даже разделитель есть такой "-" (45), а есть такой "–" (150).


Спасибо за оптимизацию формулы! Я на самом деле из-за слабых познаний особо не смотрю на длину формулы. У меня есть формула на 1700 символов, если не ошибаюсь, вот там жестко, но главное работает) А по поводу диапазонов, допустим я их предварительно привожу к одному виду - к символу 45 (-). В таком случае возможно раскидать, учитывая что диапазоны могут быть вида 1-19, 21-55 и тп? А есть идеи в каком направлении работать?)

Автор - Volkofx
Дата добавления - 18.03.2017 в 15:14
bmv98rus Дата: Суббота, 18.03.2017, 15:53 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4112
Репутация: 769 ±
Замечаний: 0% ±

Excel 2013/2016
ну пробегала тут на 7000 знаков формулка, а смысл?

Покак у меня только в сторону доп столбцов мысли.


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщениену пробегала тут на 7000 знаков формулка, а смысл?

Покак у меня только в сторону доп столбцов мысли.

Автор - bmv98rus
Дата добавления - 18.03.2017 в 15:53
Volkofx Дата: Суббота, 18.03.2017, 16:00 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 1 ±
Замечаний: 20% ±

Excel 2013
ну пробегала тут на 7000 знаков формулка, а смысл?


Смысл один, сделать методом тыка, если не знаешь, как это делается прямыми руками :D :D :D
Доп столбцами, условно создаю 100 доп столбцов и в каждом прописываю условие увеличения на один если число в предыдущем меньше максимального числа диапазона и больше минимального числа диапазона? А потом через сцепку выводить с подстановкой в строку? Конечно замудренно, но как вариант, не получилось правда пока вычленить все числа с диапазонами в отдельную ячейку, грубо говоря, если у меня в ячейке 3 раза встречается числа в виде диапазонов, чтобы это забилось все в одну строку. Не могу нормальную формулу для этого написать, получается не то.
 
Ответить
Сообщение
ну пробегала тут на 7000 знаков формулка, а смысл?


Смысл один, сделать методом тыка, если не знаешь, как это делается прямыми руками :D :D :D
Доп столбцами, условно создаю 100 доп столбцов и в каждом прописываю условие увеличения на один если число в предыдущем меньше максимального числа диапазона и больше минимального числа диапазона? А потом через сцепку выводить с подстановкой в строку? Конечно замудренно, но как вариант, не получилось правда пока вычленить все числа с диапазонами в отдельную ячейку, грубо говоря, если у меня в ячейке 3 раза встречается числа в виде диапазонов, чтобы это забилось все в одну строку. Не могу нормальную формулу для этого написать, получается не то.

Автор - Volkofx
Дата добавления - 18.03.2017 в 16:00
bmv98rus Дата: Суббота, 18.03.2017, 17:19 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4112
Репутация: 769 ±
Замечаний: 0% ±

Excel 2013/2016
ну под доп столбцами я другое имел в виду.
не финал, а как идея.
К сообщению приложен файл: Copy_of_6074170.xlsx (15.9 Kb)


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
Сообщениену под доп столбцами я другое имел в виду.
не финал, а как идея.

Автор - bmv98rus
Дата добавления - 18.03.2017 в 17:19
Светлый Дата: Суббота, 18.03.2017, 20:35 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1844
Репутация: 522 ±
Замечаний: 0% ±

Excel 2013, 2016
Могу предложить такую формулу навскидку:
Код
=ПСТР($A$1;ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1)+1;ПОИСК(","&ПСТР(A2;ПОИСК("-";A2)+1;99)+1&",";$A$1)-1-ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1))

В ячейке A1 текст ",1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,"
Это для преобразования диапазона в перечисление.


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Суббота, 18.03.2017, 20:48
 
Ответить
СообщениеМогу предложить такую формулу навскидку:
Код
=ПСТР($A$1;ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1)+1;ПОИСК(","&ПСТР(A2;ПОИСК("-";A2)+1;99)+1&",";$A$1)-1-ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1))

В ячейке A1 текст ",1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,"
Это для преобразования диапазона в перечисление.

Автор - Светлый
Дата добавления - 18.03.2017 в 20:35
Volkofx Дата: Понедельник, 20.03.2017, 10:50 | Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 1 ±
Замечаний: 20% ±

Excel 2013
ну под доп столбцами я другое имел в виду.
не финал, а как идея.

Отлично, мне это решение очень даже подходит! Спасибо!

Цитата Светлый, 18.03.2017 в 20:35, в сообщении № 7 ()
Могу предложить такую формулу навскидку:

=ПСТР($A$1;ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1)+1;ПОИСК(","&ПСТР(A2;ПОИСК("-";A2)+1;99)+1&",";$A$1)-1-ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1))

Спасибо за идею, я думаю, что это применю где-нибудь в работе.
 
Ответить
Сообщение
ну под доп столбцами я другое имел в виду.
не финал, а как идея.

Отлично, мне это решение очень даже подходит! Спасибо!

Цитата Светлый, 18.03.2017 в 20:35, в сообщении № 7 ()
Могу предложить такую формулу навскидку:

=ПСТР($A$1;ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1)+1;ПОИСК(","&ПСТР(A2;ПОИСК("-";A2)+1;99)+1&",";$A$1)-1-ПОИСК(","&ПСТР(A2;1;ПОИСК("-";A2)-1)&",";$A$1))

Спасибо за идею, я думаю, что это применю где-нибудь в работе.

Автор - Volkofx
Дата добавления - 20.03.2017 в 10:50
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!