Страница: 1 |
Страница: 1 |
Вопрос: Как испльзовать CheckBox в цикле?
Добавлено: 08.05.08 10:27
Автор вопроса: Юра
Всем привет! Есть проблемка. На листе расположенно 94 элемента CheckBox с именами CheckBox1....CheckBox94.
Периодически нужно просматривать хначение .Value.
попытка организовать цикл не привела ни к чемц хорошему.
Примеры
For i=1 to 94
if CheckBox(i).Value=True then
.....
end if
Next i
или же
For i=1 to 94
if ("CheckBox" & i).Value=True then
.....
end if
Next i
или же нашел в инете на каком то форуме
For i=1 to 94
if Me.control("CheckBox" & i).Value=True then
.....
end if
Next i
Ничего из этого не работает. Программа выдает ошибку.
Не охота перечислять все 94 элемента да еще не один раз.
Подскажите пожалуйсто как можно загнать это в цикл.
Заранее СПАСИБО!!!
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
J. Smith
ICQ: ненавижу
Вопросов: 40
Ответов: 477
Web-сайт:
Профиль | | #1
Добавлено: 08.05.08 10:54
Был похожий вопрос
http://vbnet.ru/forum/show.aspx?id=164961
только там контролы были на форме Forms 2,
версия офиса чтото может значить, укажи,
скинешь документ на ящик может чем помогу
Номер ответа: 2
Автор ответа:
J. Smith
ICQ: ненавижу
Вопросов: 40
Ответов: 477
Web-сайт:
Профиль | | #2
Добавлено: 08.05.08 13:01
Что 2007 эт жаль, я ещё плохо с ним знаком, наверно ты прикрепил к письму файл и его срезали, я не получил. Попробуй упаковать его и прикрепить архив.
Номер ответа: 3
Автор ответа:
J. Smith
ICQ: ненавижу
Вопросов: 40
Ответов: 477
Web-сайт:
Профиль | | #3
Добавлено: 08.05.08 13:15
Незачто...
Номер ответа: 4
Автор ответа:
Xiaofang
Вопросов: 0
Ответов: 5
Профиль | | #4
Добавлено: 10.05.08 22:32
Элементы управления, расположенные на листе, входят в коллекцию OLEObjects.
Можно сделать так:
Dim i As Long
Dim chk As Object, ws As Worksheet
Set ws = ActiveSheet
For i = 1 To 4
Set chk = ws.OLEObjects("CheckBox" & i).Object
Debug.Print chk.Value
Next
'Не забыть освободить память
Set ws = Nothing
Set chk = Nothing
End Sub 'TestValues