Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2010, 17:54   #1
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию Сортировка дат

Нужно,чтобы сортировка была по убыванию числа,месяца,года.
Однако после исполнения макроса просто убывают числа.Пример во вложении:
Вложения
Тип файла: rar Сортировка дат.rar (7.4 Кб, 27 просмотров)
vfv вне форума Ответить с цитированием
Старый 10.03.2010, 18:22   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Записал макрорекодером

Код:
Sub Сортировать()
 Range("A1:F1000").Select
  ActiveSheet.Sort.SortFields.Clear
    ActiveSheet.Sort.SortFields.Add Key:=Range("A1"), _
     SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
  With ActiveSheet.Sort
        .SetRange Range("A1:F1000")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
 
Range("A1").Select
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 10.03.2010, 18:33   #3
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию

Не работает!
Run-time error 438':
Object doesn't support this property or method

Кстати ,если в ручную сортировать,то всё получается,а макросом нет.
vfv вне форума Ответить с цитированием
Старый 10.03.2010, 18:55   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

В 2003 дает ошибку
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 10.03.2010, 19:03   #5
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию

Да у меня Excel 2003.
Должен же быть какой нибудь выход??
Может кто подскажет дедушке??
vfv вне форума Ответить с цитированием
Старый 10.03.2010, 19:49   #6
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

а на что Вы рассчитывали сортируя текст?

вот примените макросик или как угодно преобразуйте свой текст в даты, и сортируйте. Ваш макрос сортировки нормально работает

Код:
Sub pp()
Dim i
For i = 1 To 13
Cells(i, 1) = CDate(Cells(i, 1))
Next i
End Sub
Dophin вне форума Ответить с цитированием
Старый 10.03.2010, 20:04   #7
vfv
Пользователь
 
Регистрация: 28.07.2009
Сообщений: 54
По умолчанию

Спасибо вам Dophin за ответ.
Преобразовал и всё заработало.
Хотя я никак не могу понять-формат пробовал менять через меню формат ячеек, ставил на даты и всё равно не работало.
Значит это не одно и тоже.
vfv вне форума Ответить с цитированием
Старый 10.03.2010, 20:11   #8
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

нет. текст "20.05.2010" это текст, и формат ячеек тут не при чем
Dophin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разница дат Sparky БД в Delphi 2 28.01.2010 10:54
Разница дат Ver0nica Общие вопросы Delphi 1 30.05.2009 18:38
Формат дат lalilulelo Помощь студентам 10 27.04.2009 14:55
Сравнение дат for_regist1 БД в Delphi 21 26.01.2009 01:29
сравнение дат Geddar Общие вопросы Delphi 2 04.06.2008 19:09