Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value / 4 сообщений из 4, страница 1 из 1
23.05.2006, 21:10:12
    #33746835
andrey ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value
как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value проблема в том что есть несколько обектов TextBox и к ним удобно организовать доступ при помощи цикла. Например:
M(1)=UserForm1.TextBox1.Value
M(2)=UserForm1.TextBox2.Value
M(3)=UserForm1.TextBox3.Value
M(4)=UserForm1.TextBox4.Value
как заменить на конструкцию типа заменить
for i = 1 to 4
M(i)=UserForm1.TextBox(i).Value ?????
next
...
Рейтинг: 0 / 0
23.05.2006, 22:41:02
    #33746928
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub CommandButton1_Click()
    Dim avarArray( 1  To  4 ) As Variant
    Dim intI As Integer
    
    For intI =  1  To  4 
        avarArray(intI) = UserForm1.Controls("TextBox" & intI)
    Next intI
End Sub
...
Рейтинг: 0 / 0
23.05.2006, 22:43:31
    #33746933
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value
напрямую никак, так как в MSforms 2.0 нет коллекций контролов.
выход.
пишем в коде формы следующее
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Property Get myTextBox(ByVal p_N As Long) As Object
    Dim objControl As Control
    For Each objControl In Me.Controls
        If objControl.Name = "TextBox" & CStr(p_N) Then
            Set myTextBox = objControl
            Exit Property
        End If
    Next
End Property
А вот вызов
Код: plaintext
1.
2.
3.
Private Sub CommandButton1_Click()
    myTextBox( 1 ).Text = "External set"
End Sub
...
Рейтинг: 0 / 0
24.05.2006, 19:03:33
    #33749687
andrey ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value
Ashton
Спасибо!!!

В книгах (типа для "чайников") нигде такого не рассматривается.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / как записать выражение UserForm1.TextBox1.Value в виде UserForm1.TextBox(i).Value / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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