powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / (глюк элемента управления
4 сообщений из 4, страница 1 из 1
(глюк элемента управления
    #34962345
DaniilK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как добавить элемент упрправления и задать его свойства из ВБА ?
Добавляю элемент упрправления так:
OLEObjects.Add ClassType:="Forms.TextBox.1"
А вот работать с его свойствами невозможно... (напр. TextBox1.Text="Test" - ругается)
...
Рейтинг: 0 / 0
(глюк элемента управления
    #34962397
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имя ему дай сначала
...
Рейтинг: 0 / 0
(глюк элемента управления
    #34962475
lena_###
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DaniilK
Можно, к примеру, так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Sub s()
  Dim v_Sh As Worksheet
  Dim v_OLEObject As OLEObject
  Dim v_TextBox As MSForms.TextBox
  
  Set v_Sh = ThisWorkbook.Worksheets( 1 )
  Set v_OLEObject = v_Sh.OLEObjects.Add(ClassType:="Forms.TextBox.1")
  Set v_TextBox = v_OLEObject.Object

  With v_OLEObject
    .Left = v_Sh.Range("B2").Left
    .Top = v_Sh.Range("B2").Top
  End With
  
  With v_TextBox
    .Text = "Текст"
    .BackColor = &HC0FFC0 'RGB(192, 255, 192)
  End With
End Sub
или, как сказал vbapro , дать ему имя:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Sub s()
  Dim v_Sh As Worksheet
  Dim v_OLEObject As OLEObject
  
  Set v_Sh = ThisWorkbook.Worksheets( 1 )
  Set v_OLEObject = v_Sh.OLEObjects.Add(ClassType:="Forms.TextBox.1")

  v_OLEObject.Name = "TextBox1"
  
  With v_Sh.OLEObjects("TextBox1")
    .Left = v_Sh.Range("B2").Left
    .Top = v_Sh.Range("B2").Top
  End With
  
  With v_Sh.OLEObjects("TextBox1").Object
    .Text = "Текст"
    .BackColor = &HC0FFC0 'RGB(192, 255, 192)
  End With
End Sub
...
Рейтинг: 0 / 0
(глюк элемента управления
    #34964452
DaniilK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо большое!! А то я решил этот вопрос немного извращённым методом: set tbNewTextBox = tbOldTextBox.Duplicate
Только перед этим мне пришлось изменить определённые свойства tbOldTextBox, затем сделать .Duplicate, а затем восстановить изменённые свойства tbOldTextBox. А только после этого я задал имя для tbNewTextBox и был удивлён, что ВБА не ругнулся... ))
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / (глюк элемента управления
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]