Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование, связанное с MS Office > Одинаковые записи в Combobox


Автор: AndreyZ53 30.1.2011, 13:25
Здравствуйте, тут делаю свою контрольную в VBA на Access, совсем не разбираюсь в нем, вот возникла проблема в том, что если в Combobox есть 2 и более одинаковые записей (item-ом), то ListIndex этой записи оно выводит первой и выделяет ее
То есть если вот такие записи
Первый
Второй
Первый

И я выбираю 3 запись из выпадающего списка, то мне оно выводит ListIndex - 0, а должно 2, кто поможет с данной проблемой, спасибо за ранее

Автор: Izuver 30.1.2011, 14:45
При каких обстоятельствах ты выбираешь "Первый", я так понял не вручную
часть этого кода дай

Автор: AndreyZ53 30.1.2011, 16:52
Вот код у меня на заполнение
Код

combo.AddItem("Первый")
combo.AddItem("Второй")
combo.AddItem("Первый")


Если напишу на кнопку код получения номера строки из ComboBox
Код

MsgBox(combo.ListIndex)


И вот по нажатию на эту кнопку, по которой выводится ListIndex, я выбираю в combobox 3 пункт (Первый), оно мне выводит в сообщении значение 0 и ставит указатель на первую строку в combobox, а должно выводить в сообщении 2 и ставить указатель на 3 строку, если выбираю пункт Второй, то выводит в сообщении значение 1, то есть если выбираю какую-то строку, которая уже есть в списке, то оно выводит мне номер самой первой из этого списка.

Автор: Izuver 30.1.2011, 17:59
По твоим же кодам:
Код

Private Sub CommandButton1_Click()
MsgBox ComboBox1.ListIndex
End Sub
Private Sub UserForm_Initialize()
ComboBox1.AddItem ("Первый")
ComboBox1.AddItem ("Второй")
ComboBox1.AddItem ("Первый")
End Sub

получилось все правильно, вот так
http://clip2net.com/s/Kgix

Автор: AndreyZ53 31.1.2011, 00:12
Хм, странно, у меня почему-то в MS Access это не работает, можете сделать тоже самое в MS Access и скинуть файл-проект, я хотел бы посмотреть, потому что в Access у меня не работает это

Автор: Akina 31.1.2011, 09:10
AndreyZ53, вообще-то комбобокс (и иные контролы для выбора из списков) никогда не был расчитан на вывод строк, которые ПОЛНОСТЬЮ совпадают.
Добавьте скрытый столбец идентификатора записи, и все операции выбора и перехода делайте исключительно по нему.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)