2013-11-12 3 views
1

В настоящее время я разрабатываю некоторые макросы Excel, и мне нужно использовать проверку ячейки.VBA Validation List: Choices не отображается

Я просмотрел довольно много образцов, которые в основном показывают одно и то же, но я не могу заставить его работать должным образом.

Вот мой код:

Dim val As String: val = "this,is,sparta" 

    With ActiveSheet.Range("C:C").Validation 
     .Delete 
     .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ 
     xlBetween, Formula1:=val 
     .IgnoreBlank = True 
     .InCellDropdown = True 
     .InputTitle = "" 
     .ErrorTitle = "" 
     .InputMessage = "" 
     .ErrorMessage = "" 
     .ShowInput = True 
     .ShowError = True 
    End With 

Но в конце концов, вместо того, чтобы три варианта («это», «есть» и «Спарта») в списке, у меня только один, равно к «Это, есть, спарта».

Я пропустил что-нибудь в конфигурации?

Заранее спасибо.

+1

Ваш код делает именно то, что вы хотите, чтобы это не было проблемой. Должно быть что-то еще, заставляющее не работать должным образом. Откройте новую книгу и попробуйте код, посмотрите, работает ли это для вас - это поможет вам определить, связана ли проблема с глобальной или конкретной рабочей книгой. –

+0

Действительно, я создал новую Рабочую книгу, использовал точно такой же код, и это сработало. Что могло привести к сбою в предыдущем? Я ничего не сделал в этом, кроме теста выше. –

+2

Теперь, это довольно широкий вопрос, который я не думаю, что могу ответить:/просто много комбинаций и возможностей. Будьте осторожны с использованием оператора ':' специально в циклах, поскольку VBA неправильно выполнит ваш код, не бросая ошибка. –

ответ

0

это сам ответ только здесь, чтобы отметить этот вопрос как разрешенный. см. комментарии к первому сообщению для любых подробностей.

Смежные вопросы