|
|
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Привет всем!!! Имеется массив из элементов разделенных пустыми ячейками. Например, массив из семи ячеек: Значение 1 Значение 2 Значение 3 Значение 4 Либо (вариант 2, если так проще) массив повторяющихся значений: Значение 1 Значение 1 Значение 2 Значение 2 Значение 2 Значение 3 Значение 4 Необходимо: сгруппировать этот массив так, чтобы получился массив из 4-х элементов: Значение 1 Значение 2 Значение 3 Значение 4 Это нужно, чтобы вставить эту формулу в "Данные-проверка-список" и в ячейке в выпадающем списке выпадали все эти 4 варианта по порядку. Хочу сделать наиболее гибкую структуру связанных списков. ЗЫ. Варианты решения с использованием имен и ДВССЫЛ() или вспомогательной таблицы мне известны. Вот хочу именно так, если это возможно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2007, 18:49:24 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
kyber ЗЫ. Варианты решения с использованием имен и ДВССЫЛ()..................мне известны. Это вряд ли Мне известны только вспомогательные таблицы, даже если с использованием имён Либо макрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2007, 19:06:13 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
DeggasadМне известны только вспомогательные таблицы, даже если с использованием имён Ну да, действительно - согласен. Даже если с именами - все равно нужна вспомогательная таблица... Но я все же надеюсь... ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2007, 19:20:56 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Самое короткое, что могу предложить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2007, 19:32:41 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Не совсем то, что я хотел, но все равно спасибо - я бы так делал по-другому, интересно разобраться в Ваших формулах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 10:36:21 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
А вот самое короткое, что я могу предложить :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 11:01:26 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikА вот самое короткое, что я могу предложить :-) Дело хозяйское, но - СМЕЩ() летучая - в именованных формулах предпочитаю использовать ссылку на весь столбец, тогда формулы не чувствительны к перемещению отдельных элементов столбца и значительно уменьшается вероятность ошибки Вцелом у меня конечно слишком заморочено получилось, можно покороче конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 11:19:57 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Да я всё знаю... просто хотелось как можно покороче сделать :-) При чём, хочу отметить, что мой вариант отбрасывает повторения (в данном случае городов)... Вы можете ввести несколько одинаковых городов, но в списке будет только одна запизьь... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 11:32:02 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Если не обращать внимание на красоту (ошибки там и всё такое), то я бы сделал так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 11:32:55 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikПри чём, хочу отметить, что мой вариант отбрасывает повторения (в данном случае городов)... Вы можете ввести несколько одинаковых городов, но в списке будет только одна запизьь... :) Это плюс наверное :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 11:35:08 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
А это что за безобразие: ? =ИНДЕКС(Лист1!$C:$C;2):........ Добавится одна строка и уже.... не то пальто... А если уж делать совсем универсальный метод, то лучше так (для имени "Города"), а то мало ли что можно ещё "сверху" найти, если использовать ПОИСКПОЗ("*";Лист1!$C:$C;0))... да и зачем вообще что-то искать? Короче, вот: =СМЕЩ(Лист1!$C$1;1;;СЧЁТЕСЛИ(Лист1!$C$2:$C$10;"*")) или =ИНДЕКС(Лист1!$C:$C;СТРОКА(Лист1!$C$1)+1):ИНДЕКС(Лист1!$C:$C;ПОИСКПОЗ("";Лист1!$C:$C;-1)) "яяяя" - искать совсем необязательно :-) Единственное условие - чтобы не вставлять строки между строками 1 и 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 12:05:16 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikА это что за безобразие: ? =ИНДЕКС(Лист1!$C:$C;2):........ Добавится одна строка и уже.... не то пальто... Зачем кидаться словами. Это не безобразие, это принцип, преимущества которого я уже описал выше (помогает избежать нарушения формулы в результате перетаскивания-вырезания ячеек). А уж как в этот принцип подставить номер строки, это второй вопрос: - просто номер если уверен что не будут строки меняться - поиском найти первую ячейку с текстом - или ещё на что фантазии хватит Короче тоже могу кртиковать: Например счётесли() вообще неудобно использовать, т.к. это уже противоречит принципу саморасширяющегося диапазона (снизу данные нельзя добавить). В данной конкретной задаче может и ничего, но лучше сразу к хорошему привыкать. @Nik =ИНДЕКС(Лист1!$C:$C;СТРОКА(Лист1!$C$1)+1):ИНДЕКС(Лист1!$C:$C;ПОИСКПОЗ("";Лист1!$C:$C;-1)) Единственное условие - чтобы не вставлять строки между строками 1 и 2 Вот этот вариантик вроде ничего, но только он недалеко ушёл от моего, немного разный подход :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 13:20:55 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
DeggasadНапример счётесли() вообще неудобно использовать, т.к. это уже противоречит принципу саморасширяющегося диапазона (снизу данные нельзя добавить). В данной конкретной задаче может и ничего, но лучше сразу к хорошему привыкать. А можно для особо непонятливых более подробно осветить этоти моменты ... :-) Да, и расскажите как тут смайлы в текст вставлять ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 14:21:15 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikА можно для особо непонятливых более подробно осветить этоти моменты ... :-) А что тут прояснять Есть 2 формулы @Nik=СМЕЩ(Лист1!$C$1;1;;СЧЁТЕСЛИ(Лист1!$C$2:$C$10;"*")) =ИНДЕКС(Лист1!$C:$C;СТРОКА(Лист1!$C$1)+1):ИНДЕКС(Лист1!$C:$C;ПОИСКПОЗ("";Лист1!$C:$C;-1)) Против второй я не спорю и с самого начала именно такой принцип и предлагал, только что вы свою логику заложили в подстановку первой строки и в поиск последней, но только сам смысл формулы от этого не поменялся. Всё про это забыли А вот Первая формула: -Она летучая -Она ссылается на ограниченный диапазон ячеек, а это не удобно т.к. при расширении списка вниз (добавлении данных внизу) не будет автоматически расширяться диапазон. И может быть в рамках данной задачи это и неважно, но зачем заранее ограниченное решение использовать если есть другие, та же наприер вторая из приведённых формул. Вообщем будут какие-то новые варианты, будем смотреть, а эти я считаю довольно обсосали @NikДа, и расскажите как тут смайлы в текст вставлять ? Я сам не интересовался, но впринципе самый простой способ узнать: Это находишь смайл, жмёшь цитировать и смотришь как его другие написали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 14:45:25 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Ок. А как понимать жёсткие задания диапазонов тут?? =ИНДЕКС($A:$A;СУММПРОИЗВ(НАИМЕНЬШИЙ(($A$3:$A$11<>"")*СТРОКА($A$3:$A$11);СТРОКА()+$C$2))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 15:11:17 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikОк. А как понимать жёсткие задания диапазонов тут?? =ИНДЕКС($A:$A;СУММПРОИЗВ(НАИМЕНЬШИЙ(($A$3:$A$11<>"")*СТРОКА($A$3:$A$11);СТРОКА()+$C$2))) Я же говорил, что в рамках этой задачи это наверное незначимо. Но т.к. задача состоит из двух частей: - сортировка - определение списка значений Я говорил именно про вторую часть, имея ввиду, что не стоит рассматривать частный случай, а стоит один раз правильно научиться создавать диапазоны и не бить голову. Если что не так не обессутде, но я вроде 3 раза упомянул, что не про этот конкретно пример говорю! З.Ы.: В целом хочу заметить, что не отрицаю право на существование любой точки зрения. И сам всего лишь высказываю свою, опираясь на свой небольшой опыт. Активно вы начали на этом форуме. Надеюсь продолжение будет таким же! И я буду учиться на ваших примерах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 15:36:31 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Хе.... Так кто был учителем.... Сам KL :-) (былин, так и не нашёл как тут смайлы вставлять) А относительно диапазонов, то я, как правило, использую именованые динамические... А тут только для простоты жёстко задал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 15:57:16 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikА относительно диапазонов, то я, как правило, использую именованые динамические... Так а я про что! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 16:00:27 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Оо.... ! Это у тебя слуайно получилось смайл вставить или как ? ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 16:10:04 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikОо.... ! Это у тебя слуайно получилось смайл вставить или как ? ;) Я один этот умею \:\)\)\) слеши убери ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 16:13:38 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
плохо искал Щукина АннаМне известны вот такие:Смайлик Код Код: plaintext Код: plaintext Код: plaintext Код: plaintext Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2007, 16:32:30 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Большое спасибо за варианты решения... Особо не помогло, т.к. нужен промежуточный список, но интересно поразбираться в формулах... Отдельное спасибо за смайлики В ходе экспериментов закралась мысль, что в выпадающий список можно вставить только такую формулу, которая будет разрешать определенный реальный диапазон в книге. Т.е. сформировать в формуле массив из значений произвольных ячеек невозможно... Я прав? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 15:17:18 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
kyberБольшое спасибо за варианты решения... Особо не помогло, т.к. нужен промежуточный список... И так тоже не подойдёт ? Можете дописывать ещё 68 городов (столько, сколько #Н/Д в скрытом столбце) и они автоматически будут появляться в списке. kyber В ходе экспериментов закралась мысль, что в выпадающий список можно вставить только такую формулу, которая будет разрешать определенный реальный диапазон в книге. Т.е. сформировать в формуле массив из значений произвольных ячеек невозможно... Тут не совсем понятно... Можно сказать совсем непонятно :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 15:56:07 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
kyberВ ходе экспериментов закралась мысль, что в выпадающий список можно вставить только такую формулу, которая будет разрешать определенный реальный диапазон в книге. Т.е. сформировать в формуле массив из значений произвольных ячеек невозможно... Я прав? Да прав, а мы разве это в начале не обсудили? Можно макросом сформировать строку из произвольных ячеек и просто значения подставить в список проверки! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 16:19:00 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
DeggasadДа прав, а мы разве это в начале не обсудили? Я тогда подумал, что это сделать нельзя потому, что нельзя написать такую формулу. DeggasadМожно макросом сформировать строку из произвольных ячеек и просто значения подставить в список проверки! Нет, я хотел, чтобы этот список еще и зависел от рядом стоящей ячейки. Ну в-общем, для своей задачи я уже придумал решение "через ухо", а в общем случае это получается невозможным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 16:26:08 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
А я не могу понять почему нельзя иметь промежуточный список ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 16:40:48 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Я вижу тут я несколько опоздал, но если интересна моя т.з., то я не сторонник выполнения данной задачи через формулы, или вернее только через формулы иза больших затрат ресурсов, которые это влечет. Если опять-таки интересно, прилагаю мои довольно давние эксперементы в этой области. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 16:53:05 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Именно отсюда я и взял свой вариант решения.... (тока уже по памяти). Помню аж с захлёбом начинал разбираться в этих формулах.... :-) Но все разобрать не хватило духу :-) Ты ещё тогда, помнится, сказал: "в молодости баловался...". Мдя, подумал тогда я, бурно проходила твоя молодость... не то что нынешнее племя.. Богатыри - не мы! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2007, 17:09:27 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
DeggasadЕсли не обращать внимание на красоту (ошибки там и всё такое), то я бы сделал так Народ, у меня похожая задачка. Только я не смог понять, что именно вы здесь сделали. Сколько ни скачивал ваши примеры, ни один файл не расшифровывается, а по фрагментам обсуждения не смог реконструировать ответ. Задачка такая: нужно получить "сжатый" столбик. Есть два коротеньких столбика. В 1-м стоят значения вперемежку с пустыми ячейками. Нужно из 2-го столбика вытянуть только те значения, которые соответствуют не пустым ячейкам в 1-м столбике. Результат нужно получить в отдельном столбике и без пустых ячеек, но непустые значения дожны быть оставлены в том же порядке. Исходные значения могут повторяться и эти повторения нужно оставлять в результирующем столбике. Все значения числовые. Из предыдущих обсуждений осталось непонятным, можно ли мою задачку реализовать только формулой без вспомогательных значений? Понятно, что мой вопрос можно свести к уже обсужденной задаче, но тогда формулы станут еще более громоздкими. Подскажите, плииз, я не из самых профи в экселе, а времени на думанье не оставляют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2008, 14:01:41 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Всего-то заменить один столбец в формуле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2008, 21:31:00 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
DeggasadВсего-то заменить один столбец в формуле. Я заменю, было бы где ... Сколько ни скачиваю файлов, ни один не открывается, а по фрагментам обсуждений не смог реконструировать. Кто может помочь непосредственно здесь, наверняка там немного функций? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 11:19:27 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
В предыдущем посте файл нормальный, так что пробуйте качать и смотрите, я там всё показал. А без файла объяснять ... Сморите почему не открывается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 11:47:49 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Deggasad Сморите почему не открывается? Да верю, что файлы нормальные, вот не открываются и все! давно бы уже прочел, а так ни зипом, ни раром. Может опера виновата, может распаковщики старые, но такова моя офисная судьба. А алгоритм можно в общих чертах пояснить, я понятливый, сам был программистом. Да только, глядя на присутствовавшие в обсуждениях ИНДЕКС(), СМЕЩ() и т.п., создалось впечатление, что используются промежуточные результаты, а с промеж. результатами я и сам могу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 13:37:33 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
Вот как можно сгруппировать массив без промежуточного списка и подставить его в Данные/Проверка/Список (правда, с исп. маленького макроса) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 16:49:29 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
@NikВот как можно сгруппировать массив без промежуточного списка и подставить его в Данные/Проверка/Список (правда, с исп. маленького макроса) Мужики, я всем признателен, но ... ...ну Н Е О Т К Р Ы В А Е Т С Я ни один из зипов, хоть тресни. Уменя их уже коллекция: сжать_список, список_новый, пример, 1, теперь вот Compress_List2. м.б. в ТХТ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 17:04:54 |
|
||
|
Возможно ли одной формулой сгруппировать массив?
|
|||
|---|---|---|---|
|
#18+
гость10 ...ну Н Е О Т К Р Ы В А Е Т С Я ни один из зипов, хоть тресни. Уменя их уже коллекция: сжать_список, список_новый, пример, 1, теперь вот Compress_List2. м.б. в ТХТ ? Фуууууу! наконец прочиталось, а до этого все время зипы подсовывались вместо самого файла. Пришлось попросить на стороне, чтоб скачали )) Спасибо всем! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2008, 18:44:00 |
|
||
|
|

start [/forum/topic.php?all=1&fid=61&tid=2181599]: |
0ms |
get settings: |
5ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
77ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 341ms |

| 0 / 0 |
