powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / баг с сортировкой
39 сообщений из 39, показаны все 2 страниц
баг с сортировкой
    #36069292
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
здравствуйте всем

сталкнулся с такой проблемой:
есть табличка в excele , 4й столбец - даты
делаю - зписать макрос, сортирую вручную по убыванию - затем запускаю полученный макрос и он ничего не сортирует
не понятно почему
вот такой код

автор Selection.Sort Key1:=Range("D13"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortTextAsNumbers

помогите разобраться, тк этот макрос хочу навесить на произвольную таблицу
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069455
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme,
Данные - с D2 по D7 отсортировал по убиванию
10.06.2009
03.06.2009
02.06.2009
06.05.2009
05.05.2009
02.03.2009
макрос -
Range("D2:D7").Select
Selection.Sort Key1:=Range("D2"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
сортирует без проблем, у вас не задан Range даных (ну в примере что вы дали диапазон сортировки нет).
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069467
Algil70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Данные сортировки я задал в формате Data и ещё, у вас DataOption1:=xlSortTextAsNumbers а надо DataOption1:=xlSortNormal
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069482
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, заработало
range я конечно же делал, просто не указал)
проблемы была в этом: Order1:=xlDescending DataOption1:=xlSortNormal
это все исправило, только я не понял, почему, когда я записывал макрос - значения параметров order1 и dataoption1 у меня сделал такими, как я указал выше - при этом, при записи все отсортировалось, но при дальнейшем запуске полученного макроса - ничего не происходило!
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069513
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все равно косяк:/
вот как он не отсортировал
29.05.2009
24.04.2009
24.04.2009
22.04.2009
22.04.2009
20.04.2009
20.04.2009
19.05.2009
19.05.2009
13.04.2009
11.04.2009
08.05.2009
07.04.2009
05.05.2009
03.06.2009
03.01.2009
02.04.2009
02.04.2009
01.04.2009
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069582
Algil70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня сортируется
макрос -
Range("D2:D20").Select
Selection.Sort Key1:=Range("D2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
надо следить за диапазоном, так как диапазон сортировки жёстко задан D2:D20
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069634
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у меня еще первые 3 столбца заполнены тестом
с этим как-то связано - ну не хочет сортировать
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069697
Algil70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выложите пример, посмотрим что к чему :)
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069737
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
текст на сортировку не влияет, сортируется же столб D. Для теста заполнил три столбца (a, b, c) произвольным текстом, поменял старые данные, макрос сортирует без проблем.
Навсяки слчай прикрепите ваш файл, посмотрим где баг.
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069913
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,
...
Рейтинг: 0 / 0
баг с сортировкой
    #36069914
klm l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070040
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme, Посмотрел ваш файл. В макросах не указан диапазон сортировки.
Прикрепил файл "Sort A-Z", добавыл макрос4 который делает сорторовку столба D.
Но у меня вопрос, после сортировки данные в D меняются и тогда у вас получится несоответствые с столбом где указаны цены, может вам надо чтобы соответственно сортировки менялся расклад цен?
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070055
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,
сорри, забыл я вставить этот рэнж, у меня просто все это в огромном макросе, и там есть рэнж,
я хотел для начала на простом примере сделать сортировку
- до, действительно нужно, чтобы при сортировке дат - менялись и остальные поля
но... разве это не задается когда мы делаем range("a12:d88")?
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070099
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет так не пойдёт, для этого нодо войто в Data (Данные)-Sort (Сортировка) и там выбрать столбцы для сортировки (там даюся возможность сортировать по трём столбцам).
У меня Excel 2003, если у вас 2007-ой тогда надо самому пробовать. Ок?
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070138
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,

у меня тоже 2007...
макрос1 я как раз записал так данные-сортировка-ок-ок-ок

но он не корректно работает - не пойму - возможно проблема именно с тем, что это дата, а не простое число
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070140
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme,

тфу блин думал об одном - написал о другом
у меня 2003 офис***
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070405
Algil70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, в столбе D Днные надо перевести в формате дата
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070441
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algil70Да, в столбе D Днные надо перевести в формате дата
перевел - одна песня - не хочет он сортировать
что за фигня такая - реально уже мозг сломал - весь день думаю, как решить эту, на первый взгляд, пустяковую задачу
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070464
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme,

в ручном режиме все отлично сортирует, а вот макросом - нет
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070518
Algil70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати при вводе дат сепаратор между ДД.ММ.ГГ в место точки надо вбивать /
Посмотрите в Tools-Options-Transmisions-Microsoft Office Excel menu key стойт ли /
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070554
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Посмотрите файл, переправыл все сепараторы дат на / макрос работает
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070563
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,

спасибо, домой приду - посмотрю, тк на работе нет прав на скачку
...
Рейтинг: 0 / 0
баг с сортировкой
    #36070572
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algil70Кстати при вводе дат сепаратор между ДД.ММ.ГГ в место точки надо вбивать /
Посмотрите в Tools-Options-Transmisions-Microsoft Office Excel menu key стойт ли /
да стоит именно / - клавиша перехода в меню Microsoft Office Excel
...
Рейтинг: 0 / 0
баг с сортировкой
    #36071679
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все еще не нашел ответа
тут нужен спец по вба - возможно кто-то сталкивался с такой проблемой

еще раз объясню, фишка следующая:
"вручную" через данные-сортировка - все отлично сортируется, однако, используя макрос с записанной удачной сортировкой - ничего не делает

не понятно почему он записывает неработающий макрос???

это реально проблема - причем необъяснимая
...
Рейтинг: 0 / 0
баг с сортировкой
    #36071793
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme, в файле, что я послал вам макрос работает, данные сортируется по трём столбам.
Скачайте и проверте. Там макрос сортирует только один столб с датамы, но можно сделать и по тремя, а почему у вас не получается не пойму. Если вручную сортируется и эта сортировка записывается в макрос то проблем не должно быть.
Больше я ничего не могу добавыть :(
...
Рейтинг: 0 / 0
баг с сортировкой
    #36071816
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,

я скачал, спасибо вам, но при выделении 3х столбцов - он не сортирует у меня - что же такое *cry*
...
Рейтинг: 0 / 0
баг с сортировкой
    #36071843
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У вас в ячейках текст, а не дата, следовательно, сортировка проходит по правилам сортировки текста. Посмотрите файл. Я добавил столбец, в котором преобразовал текст в дату и сортировку сделал по доп. столбцу.
...
Рейтинг: 0 / 0
баг с сортировкой
    #36071858
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkodor,

почему тогда в ручном режиме он сортирует?

я изменял тип на дата - все равно автоматически не сортировало макросом
...
Рейтинг: 0 / 0
баг с сортировкой
    #36071939
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme, макрос сортирует только один столб.
Если хотите в ручную сортировать по трём столбам то с перва надо выделить рая с надписями, потом Data-Sort? в окне выбирайте поля для сортировки, указывайте сортировать по возрастанию или по убыванию и Ок. Список отсортируется. Если всё получится то проделайте то же только уже в режиме Record new Macro.
...
Рейтинг: 0 / 0
баг с сортировкой
    #36072095
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Algol70,

ну вы совсем меня за неуча держите)
я выбираю все 3 столбца (рэнжом или вручную) - затем сортирую с выбором по какому столбцу и возрастание/убывание - ставлю первую галку (со второй не работает)
записываю все это дело

так вот корректно сортируется только при самой записи - при дальнейшей попытке использовать записанный макрос ничего не происходит
...
Рейтинг: 0 / 0
баг с сортировкой
    #36072213
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme, я незакого вас не держу, а если что извените!
я немогу вам ответиь почему макрос не сортирует при повторном запуске? может вы сортируйте уже ране отсортированые данные? вы меняйте даты, пытаитесь сортировать и в итоге сортировка не происходит или как?
...
Рейтинг: 0 / 0
баг с сортировкой
    #36072363
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rongerme,
Добавь одну строчку в свой макрос и всё заработает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Sub Макрос1()
'
' Макрос1 Макрос
' Макрос записан 02.07.2009 (User)
'

' Преобразуем текст в дату:
    Range("D13").EntireColumn.TextToColumns DataType:=xlDelimited, FieldInfo:=Array( 1 ,  4 )
' Дальше всё по плану
    Selection.Sort Key1:=Range("D13"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:= 1 , MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortTextAsNumbers
End Sub
...
Рейтинг: 0 / 0
баг с сортировкой
    #36073211
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rongerme"вручную" через данные-сортировка - все отлично сортируется, однако, используя макрос с записанной удачной сортировкой - ничего не делаетПотому что при записи макроса оно всегда использует объект Selection для определения области которую надо обработать. Этот объект описывает область выделеную на листе. Сдвинул курсор на другую ячейку выделение поменялось.

rongermeне понятно почему он записывает неработающий макрос???Потому что в тот момент выделение стояло там где надо было. А когда ты макрос запускаешь выделение стоит черти где а Эксель не умеет телепатически залезать в твою голову и узнавть где это выделение должно бы стоять.

rongermeэто реально проблема - причем необъяснимаяВсе проблемы от невнимательности. Тебе уже много раз здесь показывали что надо Selection в макросе заменить на конкретный Range(). Почему ты не попытался почитать учебник про эти два объекта?
...
Рейтинг: 0 / 0
баг с сортировкой
    #36076819
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White OwlВсе проблемы от невнимательности. Тебе уже много раз здесь показывали что надо Selection в макросе заменить на конкретный Range(). Почему ты не попытался почитать учебник про эти два объекта?
да невнимательности здесь нет
у меня в макросе range все корректно выбирает


A-Nik, спасибо огромное!!!!!! именно в этом и косяк был! все заработало
этих строчек очень не хватало)))
agol70 вам тоже отдельное спасибо, что потратили время)
...
Рейтинг: 0 / 0
баг с сортировкой
    #36076894
Algol70
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Незачто rongerme! Главное цель достигнута и всё Ок! :)
...
Рейтинг: 0 / 0
баг с сортировкой
    #36076905
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ага, ну тогда и KLю тоже отдельное спасибо за то, что показал нам простой способ перевода текста в дату
...
Рейтинг: 0 / 0
баг с сортировкой
    #36077026
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A-Nik,

для самообразования - метод TextToColumns, параметр FieldInfo:=Array(1, 4)
1 - номер столбца, 4 - в каком формате
а почему номер столбца у нас 1?
...
Рейтинг: 0 / 0
баг с сортировкой
    #36077081
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Потому, что преобразуется в дату не вся таблица, а тольео один её столбец. В диапазоне Range("D13").EntireColumn этот столбец единственный и, естественно, первый.
...
Рейтинг: 0 / 0
баг с сортировкой
    #36077165
rongerme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A-Nik,

понято) еще раз спасибо!
...
Рейтинг: 0 / 0
39 сообщений из 39, показаны все 2 страниц
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / баг с сортировкой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]