Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2003 vs Excel 2010 (AdvancedFilter) / 6 сообщений из 6, страница 1 из 1
19.04.2012, 10:34
    #37760542
RegisteredUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel 2003 vs Excel 2010 (AdvancedFilter)
Прошу помощи с кусочком макроса вот такого вида:
Код: vbnet
1.
2.
Range(urval).AdvancedFilter Action:=xlFilterCopy, CriteriaRange :=Range("A1:W2"), _
CopyToRange:=Range("AG11:BH11"), Unique:= False



В Excel 2003 этот кусочек работает правильно, а в Excel 2010 не работает
(ошибок не выдает, просто тупо и тихо не копирует данные в Range("AG11:BH11") и всё).


1. Это такая фича Excel 2010 или глюк?
2. Может я чего-то не учел?
3. Можно каким-то образом переписать этот участок кода, без использования AdvancedFilter?
...
Рейтинг: 0 / 0
19.04.2012, 12:12
    #37760740
RegisteredUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel 2003 vs Excel 2010 (AdvancedFilter)
Источник проблемы локализован.
дело в том, что Excel 2010 установлен на компьтере со шведской локалью,
а Excel 2003 на английской локали.

Разница в том, что десятичный разделитель на шведской локали "запятая", а на английской - "точка".
При этом странность не исчезает никак: AdvancedFilter при "точке" работает правильно, а при "запятой" ничего не находит.

Как побороть такое поведение со стороны AdvancedFilter?
Как заставить AdvancedFilter хавать "запятую"?
...
Рейтинг: 0 / 0
19.04.2012, 15:26
    #37761247
sergeyvg
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel 2003 vs Excel 2010 (AdvancedFilter)
Может что-то даст игра со свойствами Application'а DecimalSeparator UseSystemSeparators

Например,
DS=DecimalSeparator
DecimalSeparator="."
тра-та-та
DecimalSeparator=DS
чревато, если сбой в 'тра-та-та' произойдет
...
Рейтинг: 0 / 0
19.04.2012, 16:55
    #37761483
RegisteredUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel 2003 vs Excel 2010 (AdvancedFilter)
sergeyvgМожет что-то даст игра со свойствами Application'а DecimalSeparator UseSystemSeparators

Например,
DS=DecimalSeparator
DecimalSeparator="."
тра-та-та
DecimalSeparator=DS
чревато, если сбой в 'тра-та-та' произойдет

я тоже с этого начал, НО в обоих версиях Excel
вот это Print Application.DecimalSeparator
показывает в качестве разделителя "точку"

хотя реально на листах Екселя 2010 - "заптая"...

это просто праздник какой-то!
...
Рейтинг: 0 / 0
19.04.2012, 16:57
    #37761487
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel 2003 vs Excel 2010 (AdvancedFilter)
> Автор: RegisteredUser
> я тоже с этого начал, НО в обоих версиях Excel
> показывает в качестве разделителя "точку"

Дык недавно спотыкались

Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
19.04.2012, 18:25
    #37761686
RegisteredUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel 2003 vs Excel 2010 (AdvancedFilter)
Решение найдено...

Код: vbnet
1.
2.
3.
4.
Application.DecimalSeparator = "."
Application.UseSystemSeparators = False
<тут ваш код>
Application.UseSystemSeparators = True
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2003 vs Excel 2010 (AdvancedFilter) / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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