Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel VBA / 4 сообщений из 4, страница 1 из 1
28.06.2010, 17:44
    #36711818
Дмитрий1985
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel VBA
Мастера VBA, может кто-нибудь сможет подсказать?

Нутром чую, что ерундовая проблема.

Если создавать в Excel выпадающий список для ячейки можно указать в источники формулу типа "=ДВССЫЛ($A$1)", а вот если писать через скрипт, то вылезает ошибка.

Вот пример скрипта.

With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$A$20"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
...
Рейтинг: 0 / 0
28.06.2010, 17:47
    #36711824
Дмитрий11985
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel VBA
обшибся, формула ДВССЫЛ($A$1)
...
Рейтинг: 0 / 0
28.06.2010, 20:26
    #36712008
vlth
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Excel VBA
Дмитрий11985,

В VBA нужно использовать нелокализованные варианты вызова функций
(INDIRECT вместо ДВССЫЛ в данном случае).
Или указывать явно '.FormulaLocal='

Не знаю, можно ли вообще использовать локализованный вариант формулы для Validation
Код: plaintext
1.
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ 
xlBetween, FormulaLocal1:="= ...
Можете поэкспериментировать

P.S. Не забывайте оформлять код тегами.
...
Рейтинг: 0 / 0
28.06.2010, 22:19
    #36712131
Excel VBA
Спасибо большое. Заработало.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel VBA / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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