2016-03-23 2 views
0

Я искал высоко и низко для ответа на этот вопрос. Множество мест приближается к тому, что мне нужно, но старайтесь, как я могу, я не могу найти то, что мне нужно. Итак, вот так. У меня есть поле со списком в пользовательской форме, которая считывает значения из таблицы. когда пользователь делает выбор, в зависимости от того, как далеко вниз по таблице выбор падает, я хотел бы, чтобы текстовое поле отображало одну из двух строк. В настоящее время я использую кнопку переключения, которая кажется немного «неуклюжей». Я довольно новичок в vba, поэтому будьте осторожны со мной.Получить значение в текстовом поле в зависимости от combobox

+0

Спасибо за ответ, но не совсем то, что я был после. Позвольте мне попытаться объяснить это немного лучше. В поле со списком представлены 24 варианта из таблицы 1, в зависимости от выбора, которое требуется для отображения в текстовом поле 1 из 2 вариантов из таблицы 2. – Lectric

ответ

0
Me.textbox.Value = Me.combobox.Value 

даст вам значение ограниченного столбца выбранной строки, как правило, первый (например, если ваш выпадающий показывает данные, такие как ID, LastName, PreName, это показывает идентификатор)

Если вы хотите, чтобы показать другие colums чем ограниченные одной, используйте

Me.textbox.Value = Me.combobox.Column(n) 

(п обозначает колонку, начиная с 0 для первого, 1 для второго, ...)

Так что, если вы хотите, чтобы показать LastName из предыдущего примера, пойти с

Me.textbox.Value = Me.combobox.Column(1) 

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

If Len(Nz(Me.combobox.Column(1))) > n Then 
    Me.textbox.Value = Me.combobox.Column(1) 
Else 
    Me.textbox.Value = Null 
End If 

Там может быть другое решение, но это было бы легким

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