![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 09.05.2011
Сообщений: 22
|
![]()
Уже задавал вопрос относительно многомерных массивов в VBA и их сортировки. Сейчас пришел к тупику в выбранном пути - требуется что-то иное...
Может, подскажите, делается такая "хитрая" сортировка? Имеется таблица. В колонке "B" указываются страны (сортируются по алфавиту), в "C" - уникальные числовые идентификаторы (ID) этих стран. В "D" - туристические объекты в этих странах (сорт. по алфавиту), соответственно, в "E" - ID страны, в которой расположен данный объект. Объекты, не ссылающиеся на ID определенной страны (ID = 0), должны относиться к группе "ПРОЧИЕ" (ID = 999), т.е. находиться в самом конце таблицы. В конечном итоге таблица должна выглядеть так: ![]() Худо-бедно, соорудил макрос, который выполняет такую нестандартную сортировку. Для этого временно копирую значения ID стран из "E" в "C" и сортирую: Код:
Теперь, если добавляю новую страну, например "АЛБАНИЯ", присваиваю ей ID = 100 (произвольное значение - больше, чем последний используемый ID) и добавляю объекты в Албании: Тирана, Лежа и Дуррес. То, после сортировки Албания уходит в самый конец таблицы (после Швеции) и теряет последовательную связь со своими городами: ![]() А нужно, чтобы Албания (со своими объектами) сортировалась по алфавиту (между Австрией и Бельгией): ![]() Никак не могу понять, как же выполнить требуемую сортировку... Заранее благодарю за советы! |
![]() |
![]() |
![]() |
#2 | |
Форумчанин
Регистрация: 07.03.2010
Сообщений: 796
|
![]() Цитата:
на один лист вносите, сводной получаете нужный результат
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
|
|
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 15.12.2009
Сообщений: 1,448
|
![]()
Ага, только пустые строки забить значениями. Но это скучно
![]() ![]()
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru https://yoomoney.ru: 41001419691823 |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 25.04.2010
Сообщений: 616
|
![]()
По совету Сергея поломал голову с макросами
![]() Кнопка Sights сортирует объекты внутри страны, кнопка Countries сортирует страны. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 09.05.2011
Сообщений: 22
|
![]()
R Dmitry, спасибо, но я честно не понял, как в данном случае можно использовать сводную таблицу для моего случая сортировки.
Если не трудно, объясните. |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 09.05.2011
Сообщений: 22
|
![]()
Nilem, спасибо! Любопытный у Вас код!
Он почти работает... Если какому-либо объекту присваиваем ссылку на страну, сортировка не срабатывает. Например, если городу БАЛЧИК указать, что находится в Болгарии, т.е. поставить "4" в ячейке E346, то она все равно останется в группе "прочие", а не переместиться в 4-ю группу. Если "скрестить" мою сортировку с Вашей, то вроде бы получается что-то путное ![]() |
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 25.04.2010
Сообщений: 616
|
![]() Цитата:
Два последних цикла надо бы объединить - не придумалось ![]() |
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 07.03.2010
Сообщений: 796
|
![]()
я не поленился и заполнил исходник., смотрите результат сводной
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 09.05.2011
Сообщений: 22
|
![]()
Уважаемый R Dmitry, спасибо, идея понятна, но это не совсем то, что требуется.
Надо просто переставить строки в текущей таблице так, чтобы они последовательно сортировались по странам, а внутри страны - по туристическим объектам, и делалось бы это просто одной кнопкой, без всяких дополнительных таблиц... |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 09.05.2011
Сообщений: 22
|
![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблема с сортировкой | Anubys | Помощь студентам | 0 | 19.04.2011 17:10 |
проблема с сортировкой вставками | Brabus | Помощь студентам | 4 | 27.06.2010 12:27 |
Алгоритм "нестандартной" сортировки масива | Scorpil | Общие вопросы C/C++ | 3 | 14.11.2008 21:29 |
отсечение области окна нестандартной формы | Makcydrl | Win Api | 3 | 07.05.2008 01:36 |
Помогите с сортировкой | AHTOXA | Общие вопросы Delphi | 2 | 08.06.2007 12:46 |