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

Вход

Регистрация

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

 

= Мир MS Excel/Сортировка списка значений по другому списку - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин  
Сортировка списка значений по другому списку
ZORRO2005 Дата: Пятница, 07.09.2012, 19:34 | Сообщение № 1
Группа: Друзья
Ранг: Обитатель
Сообщений: 382
Репутация: 148 ±
Замечаний: 0% ±

Excel2010
Взял задачку для формулистов с programmersforum:
http://www.programmersforum.ru/showthread.php?t=211054
Hugo121 предложил решение с помощью макроса.
Давайте решим формулой.
К сообщению приложен файл: mmet.xls (36.5 Kb)


Сообщение отредактировал ZORRO2005 - Пятница, 07.09.2012, 19:35
 
Ответить
СообщениеВзял задачку для формулистов с programmersforum:
http://www.programmersforum.ru/showthread.php?t=211054
Hugo121 предложил решение с помощью макроса.
Давайте решим формулой.

Автор - ZORRO2005
Дата добавления - 07.09.2012 в 19:34
MCH Дата: Суббота, 08.09.2012, 21:28 | Сообщение № 2
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

Какой ориентир?
 
Ответить
СообщениеКакой ориентир?

Автор - MCH
Дата добавления - 08.09.2012 в 21:28
ZORRO2005 Дата: Воскресенье, 09.09.2012, 00:21 | Сообщение № 3
Группа: Друзья
Ранг: Обитатель
Сообщений: 382
Репутация: 148 ±
Замечаний: 0% ±

Excel2010
Quote (MCH)
Какой ориентир?

Начнем с 141
133


Сообщение отредактировал ZORRO2005 - Воскресенье, 09.09.2012, 00:58
 
Ответить
Сообщение
Quote (MCH)
Какой ориентир?

Начнем с 141
133

Автор - ZORRO2005
Дата добавления - 09.09.2012 в 00:21
vikttur Дата: Воскресенье, 09.09.2012, 03:09 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

130
 
Ответить
Сообщение130

Автор - vikttur
Дата добавления - 09.09.2012 в 03:09
MCH Дата: Воскресенье, 09.09.2012, 06:46 | Сообщение № 5
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

Если правильно понял - 126 124


Сообщение отредактировал MCH - Воскресенье, 09.09.2012, 06:55
 
Ответить
СообщениеЕсли правильно понял - 126 124

Автор - MCH
Дата добавления - 09.09.2012 в 06:46
Pelena Дата: Воскресенье, 09.09.2012, 18:34 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
174

Дадите ещё время подумать?


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816


Сообщение отредактировал Pelena - Воскресенье, 09.09.2012, 18:35
 
Ответить
Сообщение174

Дадите ещё время подумать?

Автор - Pelena
Дата добавления - 09.09.2012 в 18:34
ZORRO2005 Дата: Воскресенье, 09.09.2012, 20:39 | Сообщение № 7
Группа: Друзья
Ранг: Обитатель
Сообщений: 382
Репутация: 148 ±
Замечаний: 0% ±

Excel2010
Quote (Pelena)
Дадите ещё время подумать?

Конечно!
 
Ответить
Сообщение
Quote (Pelena)
Дадите ещё время подумать?

Конечно!

Автор - ZORRO2005
Дата добавления - 09.09.2012 в 20:39
MCH Дата: Воскресенье, 09.09.2012, 22:15 | Сообщение № 8
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

Сергей, уточняющий вапрос, как должна считать формула если последнее значение во второй таблице не равно последнему значению первой?
Например, данные в первой таблице без изменений, а во второй следующие значения:
3471.jpg
3475.jpg
3476.jpg
3478.jpg

результат должен быть следующим?
3471.jpg 3472.jpg 3473.jpg 3474.jpg
3475.jpg
3476.jpg 3477.jpg
3478.jpg 3479а.jpg 3493.jpg

Если так, то моя формула немного увеличится - 134 123 116


Сообщение отредактировал MCH - Понедельник, 10.09.2012, 12:32
 
Ответить
СообщениеСергей, уточняющий вапрос, как должна считать формула если последнее значение во второй таблице не равно последнему значению первой?
Например, данные в первой таблице без изменений, а во второй следующие значения:
3471.jpg
3475.jpg
3476.jpg
3478.jpg

результат должен быть следующим?
3471.jpg 3472.jpg 3473.jpg 3474.jpg
3475.jpg
3476.jpg 3477.jpg
3478.jpg 3479а.jpg 3493.jpg

Если так, то моя формула немного увеличится - 134 123 116

Автор - MCH
Дата добавления - 09.09.2012 в 22:15
_Boroda_ Дата: Понедельник, 10.09.2012, 00:47 | Сообщение № 9
Группа: Админы
Ранг: Местный житель
Сообщений: 16714
Репутация: 6503 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Если вместо пустых ячеек можно, чтобы были нолики, то 117.
Если должны быть именно пустые ячейки, то 123.
Это если первый знак (=) учитывается при подсчете длины формулы.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995


Сообщение отредактировал _Boroda_ - Понедельник, 10.09.2012, 00:51
 
Ответить
СообщениеЕсли вместо пустых ячеек можно, чтобы были нолики, то 117.
Если должны быть именно пустые ячейки, то 123.
Это если первый знак (=) учитывается при подсчете длины формулы.

Автор - _Boroda_
Дата добавления - 10.09.2012 в 00:47
ZORRO2005 Дата: Понедельник, 10.09.2012, 01:12 | Сообщение № 10
Группа: Друзья
Ранг: Обитатель
Сообщений: 382
Репутация: 148 ±
Замечаний: 0% ±

Excel2010
Quote (MCH)
Сергей, уточняющий вапрос, как должна считать формула если последнее значение во второй таблице не равно последнему значению первой? Например, данные в первой таблице без изменений, а во второй следующие значения: 3471.jpg 3475.jpg 3476.jpg 3478.jpg результат должен быть следующим? 3471.jpg 3472.jpg 3473.jpg 3474.jpg 3475.jpg 3476.jpg 3477.jpg 3478.jpg 3479а.jpg 3493.jpg Если так, то моя формула немного увеличится - 134

Опа! А это я не проверил.
Да, именно такой результат, как ты написал.

Quote (_Boroda_)
Если вместо пустых ячеек можно, чтобы были нолики, то 117. Если должны быть именно пустые ячейки, то 123. Это если первый знак (=) учитывается при подсчете длины формулы.

Должны быть пустые. (=) учитываем.


Сообщение отредактировал ZORRO2005 - Понедельник, 10.09.2012, 23:18
 
Ответить
Сообщение
Quote (MCH)
Сергей, уточняющий вапрос, как должна считать формула если последнее значение во второй таблице не равно последнему значению первой? Например, данные в первой таблице без изменений, а во второй следующие значения: 3471.jpg 3475.jpg 3476.jpg 3478.jpg результат должен быть следующим? 3471.jpg 3472.jpg 3473.jpg 3474.jpg 3475.jpg 3476.jpg 3477.jpg 3478.jpg 3479а.jpg 3493.jpg Если так, то моя формула немного увеличится - 134

Опа! А это я не проверил.
Да, именно такой результат, как ты написал.

Quote (_Boroda_)
Если вместо пустых ячеек можно, чтобы были нолики, то 117. Если должны быть именно пустые ячейки, то 123. Это если первый знак (=) учитывается при подсчете длины формулы.

Должны быть пустые. (=) учитываем.

Автор - ZORRO2005
Дата добавления - 10.09.2012 в 01:12
vikttur Дата: Понедельник, 10.09.2012, 03:25 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

128 127
Если A11=0, то 110


Сообщение отредактировал vikttur - Понедельник, 10.09.2012, 03:33
 
Ответить
Сообщение128 127
Если A11=0, то 110

Автор - vikttur
Дата добавления - 10.09.2012 в 03:25
Gustav Дата: Вторник, 11.09.2012, 01:06 | Сообщение № 12
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация: 1161 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Quote (vikttur)
Если A11=0

Если A11=0 (явно введенный в эту ячейку односимвольный ноль как признак окончания списка),
то 105 (считая начальный знак =)


МОИ: Ник, Tip box: 41001663842605
 
Ответить
Сообщение
Quote (vikttur)
Если A11=0

Если A11=0 (явно введенный в эту ячейку односимвольный ноль как признак окончания списка),
то 105 (считая начальный знак =)

Автор - Gustav
Дата добавления - 11.09.2012 в 01:06
MCH Дата: Вторник, 11.09.2012, 07:01 | Сообщение № 13
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

Quote (Gustav)
Если A11=0 (явно введенный в эту ячейку односимвольный ноль как признак окончания списка)

96 92
без нуля - 107 103


Сообщение отредактировал MCH - Вторник, 11.09.2012, 07:20
 
Ответить
Сообщение
Quote (Gustav)
Если A11=0 (явно введенный в эту ячейку односимвольный ноль как признак окончания списка)

96 92
без нуля - 107 103

Автор - MCH
Дата добавления - 11.09.2012 в 07:01
Pelena Дата: Вторник, 11.09.2012, 08:59 | Сообщение № 14
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
Я пас


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЯ пас

Автор - Pelena
Дата добавления - 11.09.2012 в 08:59
ZORRO2005 Дата: Вторник, 11.09.2012, 15:38 | Сообщение № 15
Группа: Друзья
Ранг: Обитатель
Сообщений: 382
Репутация: 148 ±
Замечаний: 0% ±

Excel2010
У меня 114 без нуля.
Вскрываемся!
Начинаем с самых длинных. smile


Сообщение отредактировал ZORRO2005 - Вторник, 11.09.2012, 15:40
 
Ответить
СообщениеУ меня 114 без нуля.
Вскрываемся!
Начинаем с самых длинных. smile

Автор - ZORRO2005
Дата добавления - 11.09.2012 в 15:38
Gustav Дата: Вторник, 11.09.2012, 17:10 | Сообщение № 16
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация: 1161 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Quote (ZORRO2005)
Начинаем с самых длинных.

Да я думаю, можно с любых начинать - контрольные "суммы" же озвучены smile
Иначе долго будем очередь выстраивать.

P.S. Ну ладно, первый - пошёл! У меня 0 в A11, а в B13 формула из 105 символов:

[vba]
Code

=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ($A14;$A:$A;)-ПОИСКПОЗ(A13;$A:$A;)>1;ИНДЕКС($A:$A;ПОИСКПОЗ(A13;$A:$A;)+1);Ж);"")
[/vba]
Особую гордость испытываю за букву Ж для генерации ошибки типа #ИМЯ?. Обнаружил после того, как сначала на ее месте ввел НД, а скобки забыл. Смысл же у Ж - соответствующий wink


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Вторник, 11.09.2012, 17:20
 
Ответить
Сообщение
Quote (ZORRO2005)
Начинаем с самых длинных.

Да я думаю, можно с любых начинать - контрольные "суммы" же озвучены smile
Иначе долго будем очередь выстраивать.

P.S. Ну ладно, первый - пошёл! У меня 0 в A11, а в B13 формула из 105 символов:

[vba]
Code

=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ($A14;$A:$A;)-ПОИСКПОЗ(A13;$A:$A;)>1;ИНДЕКС($A:$A;ПОИСКПОЗ(A13;$A:$A;)+1);Ж);"")
[/vba]
Особую гордость испытываю за букву Ж для генерации ошибки типа #ИМЯ?. Обнаружил после того, как сначала на ее месте ввел НД, а скобки забыл. Смысл же у Ж - соответствующий wink

Автор - Gustav
Дата добавления - 11.09.2012 в 17:10
Pelena Дата: Вторник, 11.09.2012, 17:18 | Сообщение № 17
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
Quote (ZORRO2005)
Начинаем с самых длинных.

Значит с меня
158
Code
=ЕСЛИ(ЕСЛИОШИБКА(ПОИСКПОЗ($A14;$A$1:$A$10;);СЧЁТЗ($A$1:$A$10)+1)>ПОИСКПОЗ($A13;$A$1:$A$10;)+СТОЛБЕЦ()-1;СМЕЩ($A$1;ПОИСКПОЗ($A13;$A$1:$A$10;)+СТОЛБЕЦ()-2;);"")


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816


Сообщение отредактировал Pelena - Вторник, 11.09.2012, 18:35
 
Ответить
Сообщение
Quote (ZORRO2005)
Начинаем с самых длинных.

Значит с меня
158
Code
=ЕСЛИ(ЕСЛИОШИБКА(ПОИСКПОЗ($A14;$A$1:$A$10;);СЧЁТЗ($A$1:$A$10)+1)>ПОИСКПОЗ($A13;$A$1:$A$10;)+СТОЛБЕЦ()-1;СМЕЩ($A$1;ПОИСКПОЗ($A13;$A$1:$A$10;)+СТОЛБЕЦ()-2;);"")

Автор - Pelena
Дата добавления - 11.09.2012 в 17:18
ZORRO2005 Дата: Вторник, 11.09.2012, 17:55 | Сообщение № 18
Группа: Друзья
Ранг: Обитатель
Сообщений: 382
Репутация: 148 ±
Замечаний: 0% ±

Excel2010
Gustav, в последней строке ошибка.

MCH выше писал:
Quote (MCH)
Например, данные в первой таблице без изменений, а во второй следующие значения:
3471.jpg
3475.jpg
3476.jpg
3478.jpg

результат должен быть следующим?
3471.jpg 3472.jpg 3473.jpg 3474.jpg
3475.jpg
3476.jpg 3477.jpg
3478.jpg 3479а.jpg 3493.jpg


Pelena
,
У тебя формула убежала ($A35...). Поправь.


Сообщение отредактировал ZORRO2005 - Вторник, 11.09.2012, 17:59
 
Ответить
СообщениеGustav, в последней строке ошибка.

MCH выше писал:
Quote (MCH)
Например, данные в первой таблице без изменений, а во второй следующие значения:
3471.jpg
3475.jpg
3476.jpg
3478.jpg

результат должен быть следующим?
3471.jpg 3472.jpg 3473.jpg 3474.jpg
3475.jpg
3476.jpg 3477.jpg
3478.jpg 3479а.jpg 3493.jpg


Pelena
,
У тебя формула убежала ($A35...). Поправь.

Автор - ZORRO2005
Дата добавления - 11.09.2012 в 17:55
MCH Дата: Вторник, 11.09.2012, 18:00 | Сообщение № 19
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

Ну и мой вариант
103:
Code
=ЕСЛИ(СУММ(ПОИСКПОЗ($A13:$A14&"";$A$1:$A$11&"";)*{-1:1})<СТОЛБЕЦ();"";СМЕЩ($A$1;ПОИСКПОЗ(A13;$A:$A;);))


с нулем в A11 - 92:
Code
=ЕСЛИ(СУММ(ПОИСКПОЗ($A13:$A14;$A:$A;)*{-1:1})<СТОЛБЕЦ();"";СМЕЩ($A$1;ПОИСКПОЗ(A13;$A:$A;);))


PS: Кстати, ЕСЛИОШИБКА() не работает в 2003, хотя в условиях о совместимости не было сказано

Quote (Gustav)
Смысл же у Ж - соответствующий

и стоило один символ экономить? можно ведь было две кавычки написать вместо Ж
или даже так, вместо ...);Ж);"") написать ...););)&""
и тогда длина формулы была бы такой же
К сообщению приложен файл: mmet3.xls (37.5 Kb)


Сообщение отредактировал MCH - Вторник, 11.09.2012, 18:02
 
Ответить
СообщениеНу и мой вариант
103:
Code
=ЕСЛИ(СУММ(ПОИСКПОЗ($A13:$A14&"";$A$1:$A$11&"";)*{-1:1})<СТОЛБЕЦ();"";СМЕЩ($A$1;ПОИСКПОЗ(A13;$A:$A;);))


с нулем в A11 - 92:
Code
=ЕСЛИ(СУММ(ПОИСКПОЗ($A13:$A14;$A:$A;)*{-1:1})<СТОЛБЕЦ();"";СМЕЩ($A$1;ПОИСКПОЗ(A13;$A:$A;);))


PS: Кстати, ЕСЛИОШИБКА() не работает в 2003, хотя в условиях о совместимости не было сказано

Quote (Gustav)
Смысл же у Ж - соответствующий

и стоило один символ экономить? можно ведь было две кавычки написать вместо Ж
или даже так, вместо ...);Ж);"") написать ...););)&""
и тогда длина формулы была бы такой же

Автор - MCH
Дата добавления - 11.09.2012 в 18:00
MCH Дата: Вторник, 11.09.2012, 18:01 | Сообщение № 20
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

Quote (ZORRO2005)
Gustav, в последней строке ошибка.

с нулем в A11 работает нормально, проверял

Сергей, в исходном файле в ячейках I13:I16 остались твои формулы, только потом увидел


Сообщение отредактировал MCH - Вторник, 11.09.2012, 18:07
 
Ответить
Сообщение
Quote (ZORRO2005)
Gustav, в последней строке ошибка.

с нулем в A11 работает нормально, проверял

Сергей, в исходном файле в ячейках I13:I16 остались твои формулы, только потом увидел

Автор - MCH
Дата добавления - 11.09.2012 в 18:01
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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