![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 01.10.2011
Сообщений: 19
|
![]()
Добрый день !
Вот, пытаюсь на своей Форме в TextBox отразить все значения (из столбца в Таблице) один за одним, по нажатию кнопки. Кол-во значений в Таблице не будет фиксированным (но при этом может доходить до 300-400). Вот что у меня получилось: Private Sub UserForm_Initialize() With Worksheets("List") 'Работаем с листом "List". If .Range("F2") <> "" Then TextBox1.Text = .Range("F2") If .Range("F2") = "" Then TextBox1.Text = "" End With End Sub Private Sub CommandButton1_Click() If TextBox1.Text = Sheets("List").Range("F2") Then TextBox1.Text = Sheets("List").Range("F3") ElseIf TextBox1.Text = Sheets("List").Range("F3") Then TextBox1.Text = Sheets("List").Range("F4") ElseIf TextBox1.Text = Sheets("List").Range("F4") Then TextBox1.Text = Sheets("List").Range("F5") End If End Sub Вобщем, до 3-х он у меня сейчас все цифры по порядку показывает. Но что-то мне подсказывает, что есть способы и полегче чем перебирать КАЖДОЕ из значений. Знающие люди, подскажите какой цикл использовать в моём случае. Заранее благодарен |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 05.07.2011
Сообщений: 208
|
![]() Код:
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
А если нужно назад вернуться?
Может лучше spinbutton? Значение можно заносить в публичную переменную - тогда при повторном открытии формы перебор можно продолжить. Значения с листа брать способом cells(i,6).value
webmoney: E265281470651 Z422237915069 R418926282008
|
![]() |
![]() |
![]() |
#4 | |
Пользователь
Регистрация: 01.10.2011
Сообщений: 19
|
![]() Цитата:
И кстати, действительно хотелось бы чтобы по возвращению в Форму она продолжала счёт. Но без SpinButton, т.к. нельзя мне в эту Форму новый элемент управления добавлять. Можно это как то без него организовать ? |
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
![]()
> правда работает медленно
Это сама форма тормозит! Попробуйте код без обращения к листу при нажатии кнопки, сам по себе он срабатывает за доли миллисекунды: Код:
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 01.10.2011
Сообщений: 19
|
![]() Цитата:
Может всё-же есть какое нибудь "заклинание", чтобы при повторном открывании Формы отсчёт продолжался ? |
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
![]()
> А ListBox мне нельзя, место много занимает и длинный
Кто мешает сделать его размером с текстбокс? Пробуйте, прокручивается штатными кнопочками или кнопками вверх/вниз, мгновенно. И кстати отдельная кнопка на форме не нужна, место экономится ![]()
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
Попробуйте на коде Казанского при инициализации формы:
Код:
Алексей, а где код? ![]()
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 03.06.2012 в 19:36. |
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 05.07.2011
Сообщений: 208
|
![]()
Тормозят не коды, а обработка нажатия кнопки. Попробуйте для сравнения нажимать не мышом, а клавишей Enter.
|
![]() |
![]() |
![]() |
#10 | |
Пользователь
Регистрация: 01.10.2011
Сообщений: 19
|
![]() Цитата:
Есть только одна маленькая просьба/вопрос. Как сделать так, чтобы когда он выдаст последнее значение столбца - при последующем нажатии CommandButton макрос выдавал MsgBox "В начало !" ? Сам пытался этот MsgBox как то присобачить, да знаний маловато. |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Метод покоординатного спуска | новичочек | C++ Builder | 0 | 02.05.2011 15:44 |
метод градиентного спуска | Альмира | Visual C++ | 0 | 03.04.2011 15:38 |
алгоритм покоординатного спуска | mimi_mimi | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 20.06.2010 18:23 |
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) | Mr.User | Помощь студентам | 9 | 23.11.2007 01:34 |