Здравствуйте. Ребята можно как-то убрать выделение текста в комбобоксе на форме при выборе данных из выпадающего списка, то есть сделать комбобокс не активным.
Здравствуйте. Ребята можно как-то убрать выделение текста в комбобоксе на форме при выборе данных из выпадающего списка, то есть сделать комбобокс не активным.Сергей13
Здравствуйте. Недавно начал изучать VBA. У меня эта конструкция не работает. Редактор выдаёт ошибку: Run-time error '424': Object required Предполагаю, что требуется указать комбобокс. Методом тыка, попробовал так: [vba]
Код
Private Sub ComboBox1_Change() ActiveSheet.Shapes.Range(Array("ComboBox1")).Select.other_control.SetFocus End Sub
[/vba] Не работает, та же ошибка. Подскажите, пожалуйста, что нужно сделать?
Здравствуйте. Недавно начал изучать VBA. У меня эта конструкция не работает. Редактор выдаёт ошибку: Run-time error '424': Object required Предполагаю, что требуется указать комбобокс. Методом тыка, попробовал так: [vba]
Код
Private Sub ComboBox1_Change() ActiveSheet.Shapes.Range(Array("ComboBox1")).Select.other_control.SetFocus End Sub
[/vba] Не работает, та же ошибка. Подскажите, пожалуйста, что нужно сделать?votangi59
Pelena, приветствую. Благодарю за ответ. ComboBox не в "форме", создавал через "Разработчик"-"Вставить"-"Элементы ActiveX". other_control-а нет. В свойствах комбо такой элемент отсутствует. Скрин свойств комбобокса:
Pelena, приветствую. Благодарю за ответ. ComboBox не в "форме", создавал через "Разработчик"-"Вставить"-"Элементы ActiveX". other_control-а нет. В свойствах комбо такой элемент отсутствует. Скрин свойств комбобокса: votangi59
https://s.mail.ru/FLLG/UYn89dUyu Разобрался, как и что у вас. Мне нравится. Пока не знаю, как удалять свои свежие сообщения, верхнее пустое. Поскольку Вы в группе "админ", может и на эту тему подскажите. Не сочтите, пожалуйста, за флуд.
https://s.mail.ru/FLLG/UYn89dUyu Разобрался, как и что у вас. Мне нравится. Пока не знаю, как удалять свои свежие сообщения, верхнее пустое. Поскольку Вы в группе "админ", может и на эту тему подскажите. Не сочтите, пожалуйста, за флуд.votangi59
Сообщение отредактировал votangi59 - Четверг, 08.08.2024, 11:51
поэтому в Правилах форума написано, что надо прикладывать файл с примером
Извиняюсь, в теме, в первом посте речь идёт о "форме", проглядел, сорри, виноват. Вопрос тот же, но не на "форме", какой файл ещё нужен? Я же объяснил, что комбо не в "форме". По моему мнению, возможно я ошибаюсь, но теперь вопрос поставлен вполне конкретно. Считаю, возможно ошибочно, что в моём случае файл с примером излишен. (И что я должен в нём показать? Извините, опыта, пока, не имею) Цитирую тему: "Снять выделение текста в комбобоксе" - по моему, она соответствует моему вопросу, дабы не плодить клонов по одной проблеме, в эту тему и обратился.
поэтому в Правилах форума написано, что надо прикладывать файл с примером
Извиняюсь, в теме, в первом посте речь идёт о "форме", проглядел, сорри, виноват. Вопрос тот же, но не на "форме", какой файл ещё нужен? Я же объяснил, что комбо не в "форме". По моему мнению, возможно я ошибаюсь, но теперь вопрос поставлен вполне конкретно. Считаю, возможно ошибочно, что в моём случае файл с примером излишен. (И что я должен в нём показать? Извините, опыта, пока, не имею) Цитирую тему: "Снять выделение текста в комбобоксе" - по моему, она соответствует моему вопросу, дабы не плодить клонов по одной проблеме, в эту тему и обратился.votangi59
' Тут меняете "Sheet1" на имя вашего листа где находится ваш объект, так же "ComboBox1" меняете на имя вашего объекта With ThisWorkbook.Sheets("Sheet1").OLEObjects("ComboBox1").Object .SelStart = Len(.Text) .SelLength = 0 End With
End Sub
[/vba] И читайте коменнтарий в коде, там всё сказано! Удачи.
votangi59, В модуль вашего листа где находится ваш
' Тут меняете "Sheet1" на имя вашего листа где находится ваш объект, так же "ComboBox1" меняете на имя вашего объекта With ThisWorkbook.Sheets("Sheet1").OLEObjects("ComboBox1").Object .SelStart = Len(.Text) .SelLength = 0 End With
End Sub
[/vba] И читайте коменнтарий в коде, там всё сказано! Удачи.MikeVol
votangi59, Во первых - вы залезли в чужую тему, что запрещено правилами. (почему то модераторы это пропустили) Во вторых - ComboBox на листе и в форме это две большие разницы. В третьих - нужен пример с вашими попытками решения и пояснениями, что и где у вас не получилось.
votangi59, Во первых - вы залезли в чужую тему, что запрещено правилами. (почему то модераторы это пропустили) Во вторых - ComboBox на листе и в форме это две большие разницы. В третьих - нужен пример с вашими попытками решения и пояснениями, что и где у вас не получилось.i691198
i691198, огромная благодарность за науку. Всему своё время, учту Ваши замечания. MikeVol, спасибо за наводку, попробую, о результатах отпишусь. Я тут чел новый, многого не знаю, прошу извинить за допущенные косяки.
i691198, огромная благодарность за науку. Всему своё время, учту Ваши замечания. MikeVol, спасибо за наводку, попробую, о результатах отпишусь. Я тут чел новый, многого не знаю, прошу извинить за допущенные косяки.votangi59
Сообщение отредактировал votangi59 - Пятница, 09.08.2024, 05:44
MikeVol, если не секрет, что за версия Excel LTSC 2021 EN, не слышал про такую. Чем отличается от стандартных? Какие модные фишки содержит? Вопрос всем: где на форуме можно пофлудить на различные темы?
MikeVol, если не секрет, что за версия Excel LTSC 2021 EN, не слышал про такую. Чем отличается от стандартных? Какие модные фишки содержит? Вопрос всем: где на форуме можно пофлудить на различные темы?votangi59
Сообщение отредактировал votangi59 - Пятница, 09.08.2024, 05:53
MikeVol, пока не получается. "И читайте коменнтарий в коде, там всё сказано! Удачи." - это где? Читать. Я не настолько знаком с VBA, извините, только учусь, познаю азы, так сказать. Попробовал применить вашу подсказку, пока не достиг желаемого результата. Ошибок нет. Выделение в комбобоксе осталось. Извините за мою безграмотность в этом деле. Код:[vba]
Код
Private Sub бокс_пехиВ_Change() ' выбор диапазона из меню выбора Me.бокс_пехиД1.ListFillRange = Me.бокс_пехиВ ' привязка к выбору в боксе выбора бокс_пехиД1.ListWidth = бокс_пехиД1.Width + 96 ' ширина выпадающего списка (для добавления колонок) With Sheets("Расч").OLEObjects("бокс_пехиД1").Object ' лист "Расч", объект бокс "бокс_пехиД1" .SelStart = Len(.Text) .SelLength = 0 End With Me.бокс_пехиД2.ListFillRange = Me.бокс_пехиВ бокс_пехиД2.ListWidth = бокс_пехиД2.Width + 96 Me.бокс_пехиД3.ListFillRange = Me.бокс_пехиВ бокс_пехиД3.ListWidth = бокс_пехиД3.Width + 96 ... End Sub
[/vba] Эксель, сохранив файл с изменениями, перезапускал. На всякий )
MikeVol, пока не получается. "И читайте коменнтарий в коде, там всё сказано! Удачи." - это где? Читать. Я не настолько знаком с VBA, извините, только учусь, познаю азы, так сказать. Попробовал применить вашу подсказку, пока не достиг желаемого результата. Ошибок нет. Выделение в комбобоксе осталось. Извините за мою безграмотность в этом деле. Код:[vba]
Код
Private Sub бокс_пехиВ_Change() ' выбор диапазона из меню выбора Me.бокс_пехиД1.ListFillRange = Me.бокс_пехиВ ' привязка к выбору в боксе выбора бокс_пехиД1.ListWidth = бокс_пехиД1.Width + 96 ' ширина выпадающего списка (для добавления колонок) With Sheets("Расч").OLEObjects("бокс_пехиД1").Object ' лист "Расч", объект бокс "бокс_пехиД1" .SelStart = Len(.Text) .SelLength = 0 End With Me.бокс_пехиД2.ListFillRange = Me.бокс_пехиВ бокс_пехиД2.ListWidth = бокс_пехиД2.Width + 96 Me.бокс_пехиД3.ListFillRange = Me.бокс_пехиВ бокс_пехиД3.ListWidth = бокс_пехиД3.Width + 96 ... End Sub
[/vba] Эксель, сохранив файл с изменениями, перезапускал. На всякий )votangi59
Сообщение отредактировал votangi59 - Пятница, 09.08.2024, 08:35
votangi59, приложите файл пример согласно правилам форума! votangi59, у меня разве такая процедура, читаете вы через строчку? Разве процедура DropButtonClick и ваша Change одинаковы?
P.S. про версию моего установленного офиса можете по читать тут.
votangi59, приложите файл пример согласно правилам форума! votangi59, у меня разве такая процедура, читаете вы через строчку? Разве процедура DropButtonClick и ваша Change одинаковы?
P.S. про версию моего установленного офиса можете по читать тут.MikeVol
Ученик. Одесса - Украина
Сообщение отредактировал MikeVol - Пятница, 09.08.2024, 09:11