0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 13
|
||||||
1 | ||||||
Неправильная сортировка при использовании метода .sort25.03.2012, 13:42. Просмотров 4612. Ответов 5
Метки нет Все метки)
(
Суть проблемы:
Есть таблица в Excel'e которую надо отсортировать по столбцу велосипед решил не придумывать, использовал метод .sort
%i123 %i90 %i124 получается: %i123 %i124 %i90 а хотелось бы видеть: %i90 %i123 %i124
0
|
|
25.03.2012, 13:42 | |
ошибка при использовании метода Sort - 448 Неправильная сортировка списка list.Sort(); Неправильная передача строк в шаблон при использовании Django Ошибка при использовании метода Fill |
|
14942 / 6341 / 1724
Регистрация: 24.09.2011
Сообщений: 9,976
|
||||||
25.03.2012, 15:10 | 3 | |||||
Можно в соседнем столбце выделить числа формулой, отсортировать по нему и удалить:
1
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 13
|
|
25.03.2012, 15:58 [ТС] | 4 |
Здесь проблема в том, что не <100, а <10000. Требуется разбить гигантские таблицы с данными на более мелкие и параллельно отсортировать их. В итоге проверка каждой ячейки на длинну и добавление нужного колличества нулей будет очень тормозить процесс. И хотя, на крайний случай, оба решения подходят, все таки интересно, есть ли способ используя опции метода или даже настройки самой системы, региональных параметров, например, объяснить методу, что 100>99?
0
|
14942 / 6341 / 1724
Регистрация: 24.09.2011
Сообщений: 9,976
|
|
25.03.2012, 16:24 | 5 |
При ~10000 строках основное время в любом случае займет сортировка.
Вы же, наверно, изучили диалог сортировки и попробовали разные параметры? В принципе можно создать пользовательский список из строк "%i1", "%i2", ..., "%i9", "%i10", ..., "%i99", "%i100", ..., "%i9999", "%i10000" и сортировать по нему. Но я не уверен, что можно создать такой длинный пользовательский список. А в том, что сортировка по пользовательскому списку медленнее, чем по стандартному возрастанию/убыванию - уверен ![]()
0
|
![]() ![]() |
|
25.03.2012, 19:18 | 6 |
Почитал иностранные форумы тыц и тыц.
Но везде пишут о разделении данных. На сколько будет медленно, если воспользоваться тем же алгоритмом Qsort, задав в качестве входящего параметра MID(Arr(a),3), загнав в массив все данные? Может что возможно сделать с помощью регулярных выражений. Казанский, а можно подробней об этом способе? (и как задается ключ) Я так понимаю в несколько строк загоняем значения в нужном нам порядке и это будет правилом для .Sort key:=Range(...), в каком конце окажутся данные не подпадающие под правило.
0
|
25.03.2012, 19:18 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Ошибка при использовании метода Copytodatabase. Ошибка при использовании метода хорд Странная ошибка при использовании метода erase Вылет Excel при использовании метода Intersect Партнёрская программа при использовании метода оплаты Теряются данные при использовании метода post, get Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |