Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2012, 17:22   #1
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию ЮсерФорма

Всем привет , не могу разобраться , есть такои фаил примера , в приложении ,
по пунктам
1 нажимаем перекл1 , задаем значения ячеикам
2 нажимаем перекл2 , снимаем значения с ячеек
3 нажимаем опять перекл1 и .... видим там заданные нами значения кнопок в состоянии On, при нажатии на них значения ячеикам уже не придаются .
после пары перещелкивании туду сюда юсерформа открывается уже чистои , т.е. все кнопки на неи Off. Пробовал с запретом обновления экрана пару раз открыть закрыть форму , не помогает , форма то все равно видна .

Как сделать так , чтоб кнопки при открытии юсерформы всегда имели значение Off ?
Или лучше все же так - если перекл2 значение On , то при открытии юсерформы все кнопки на неи по умолчанию Off?

заранее спасибо за ответ
Вложения
Тип файла: rar ЮсерФорма.rar (19.9 Кб, 14 просмотров)
eikhner вне форума Ответить с цитированием
Старый 22.10.2012, 18:02   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Сергей,добавь код в форму

Код:
Private Sub UserForm_Activate()
OptionButton1.Value = 0
OptionButton2.Value = 0
OptionButton3.Value = 0
OptionButton4.Value = 0
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 22.10.2012, 18:17   #3
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию

Сергей , спасибо , а как туда влепить условие про перекл2 ? Наверное не получится , фигню спросил , извиняюсь , тк как форма открывается при перекл 1 , и перкл 2 уже снят . Либо какои то журнал записывать , где отслеживать положение кнопки перекл2 , было изменение по неи или нет

Последний раз редактировалось eikhner; 22.10.2012 в 18:23.
eikhner вне форума Ответить с цитированием
Старый 22.10.2012, 18:26   #4
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию

Или повесить условие проверки ячеек снятых перекл2 , если они сняты - тогда макрос .

Последний раз редактировалось eikhner; 22.10.2012 в 18:39.
eikhner вне форума Ответить с цитированием
Старый 22.10.2012, 18:49   #5
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию

по второи части вопроса подсказал Игорь

Dim c
With UserForm1
On Error Resume Next
For Each c In .Controls
c.Value = False
Next
On Error GoTo 0
End With

все стало как надо , тема закрыта , ВСЕМ СПАСИБО !
eikhner вне форума Ответить с цитированием
Старый 22.10.2012, 19:22   #6
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию

а чтоб не происходило обнуление через закрытие юсерформы по Х, добавил вот отсюда
http://programmersforum.ru/showthrea...0%EC%F3&page=2
eikhner вне форума Ответить с цитированием
Старый 27.10.2012, 01:45   #7
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию

Всем очередной раз здравствуйте , нет смысла плодить новые темы , подскажите , плиз , где у меня ошибка
Имеем следующее

В обоих фаилах выбираем 1 ремонт , потом в открывшеися форме выбираем вверху и внизу любое из 2х условии
Нажимаем далее
Потом решаем поменять выбранные условия и ещё раз нажимаем 1 ремонт

фаил «рабочий» работает, но немного не так, как хотелось бы

фаил «зацикливается» работает по правильному алгоритму - но зацикливается

Что поправить , чтоб меня не возвращало снова и снова на форму БампераРемонт при смене условии ??? И в чем ошибка ???

Вернее , я понимаю, что работа макроса, назначенного на 1 ремонт, после щелка по кнопке далее каким то образом возвращается в начало

If БампераРемонт.OptionButton1.Value = 0 And БампераРемонт.OptionButton2.Value = 0 Then
БампераРемонт.Show
Else
ЗаменаУсловий.Show


Но ведь на кнопке далее , после изменения условии , повешено следующее действие

If Not ((OptionButton1 Or OptionButton2) And (OptionButton3 Or OptionButton4)) Then
MsgBox " укажите вариант окраски и состояние покрытия до ремонта "
Else
Me.Hide
Sheets("Лист1").Select

И так как мы выбрали новые условия , то мы должны оказаться здесь

Sheets("Лист1").Select

А мы , почему то оказываемся в начале всего деиства

Else
ЗаменаУсловий.Show
Вложения
Тип файла: rar Копия ЮсерФорма рабочий.rar (37.6 Кб, 8 просмотров)
Тип файла: rar Копия ЮсерФорма зацикливается.rar (37.1 Кб, 9 просмотров)

Последний раз редактировалось eikhner; 27.10.2012 в 02:17.
eikhner вне форума Ответить с цитированием
Старый 27.10.2012, 12:58   #8
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Надо форму выгружать.Это не зацикливание.
Код:
Private Sub CommandButton1_Click()
БампераРемонт.OptionButton1.Value = 0
БампераРемонт.OptionButton2.Value = 0
БампераРемонт.OptionButton3.Value = 0
БампераРемонт.OptionButton4.Value = 0
Unload Me
БампераРемонт.Show
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 27.10.2012, 12:59   #9
eikhner
Пользователь
 
Регистрация: 18.03.2012
Сообщений: 68
По умолчанию

Сергей , спасибо большое за помощь !!!
eikhner вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск