отображать произвольный текст в комбинированном окне Excel в пользовательской форме - PullRequest
1 голос
/ 09 декабря 2011

У меня есть 2 соприкасающихся по вертикали ComboBox в пользовательской форме Excel, оба добавлены во время разработки, и ни один из них не имеет связанного столбца. Когда выбор сделан в ComboBox1, я хотел бы показать некоторый текст в ComboBox2, такой как «Сделать дальнейший выбор ===>». Этот текст должен исчезнуть при выборе в ComboBox2.

Как я могу это сделать?

Ответы [ 2 ]

1 голос
/ 10 декабря 2011

Попытка втиснуть текст в ComboBox оказывается очень грязной, вне зависимости от незначительного эффекта, которого я пытался достичь.

Итак, я отказался от этого подхода, и теперь вместо того, чтобы пытаться поместить свой текст в ComboBox, я помещаю его на метку, расположенную поверх ComboBox2 (но оставляю показ DropButton). Изменение метки позволяет мне лучше форматировать текст, и я использую события Change двух ComboBox для переключения Z-порядка метки.

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

1 голос
/ 09 декабря 2011

Было бы полезно узнать, чего вы хотите достичь в качестве конечного результата.

Одна из возможностей - запрос объединения, чтобы задать источник строки для комбинации 2, например:

SELECT -1 As ID,"Make further selection ===>" As Something FROM Table1
UNION ALL
SELECT ID, Something FROM Table1

Вы можете использовать событие After Update в combobox1, чтобы установить источник строки, но если вы хотите, чтобы значения придерживались, вам нужно будет установить связанный столбец.

...