Страницы: 1
RSS
Работа с CheckBox
 
Добрый день профессионалам от чайника.  
Спасибо за вчерашнюю помощь.  
Но видимо, мне еще долго придется мучаться, прежде чем я пойму суть vba? но очень хочется.  
Сегодня я столкнулся с новой проблемой, а точнее с двумя. Но буду последователен...  
 
В прилагаемом файле во второй форме у меня должно быть следующее:  
 
Я выбираю CheckBox, далее я вношу в TextBox напротив число, которое должно суммироваться к общему значению коек (соответственно, если мы снимаем галочку, то число в текстбоксе напротив чекбокса должно вычитаться). Формула, по которой вычисляется показатель в textBox % охвата: Сумма всех (текстбоксов, помеченных галочкой) / Общий коечный фонд ЛПУ *100 (два знака после запятой), причем должно быть не важно, что я делаю прежде - ставлю галочку или вноше значение в textBox.  
 
У меня пока выходит только один вариант (сделан применимо к checkBox1 и checkBox2) - вначале я должен ввести значение в текстовое поле и только токда поставить галочку ЧекБокса и то не работают расчеты. Мне не понятна идея реализации ввиду отсутствия знаний. Я конечно же мог бы перелопатить все учебники, но тогда уже данная табличка потеряет актуальность. Если кто-то сможет посодействовать, буду очень признателеню  
 
Ну а второй вопрос - это уже другая тема, задам потом.  
 
Заранее спасибо.
 
Em, я Вам уже писал, никто не горит желанием разгребаться в куче форм и макросов, для того чтоб понять, чего Вы хотите. Надо было выложить файл с одной формой с пятью чек и текстбоксами. Для примера этого с головой хватит.  
По теме: такое лучше делать на классах, но это когда чуть освоитесь в ВБА. Пока так. Сделал для двух пар контролов для образца. Хотя при таком подходе ИМХО чекбоксы там лишние. От них только дополнительные неудобства. Внес текст, а чекбокс пустой - текст очистился. Предвижу, как будут чертыхаться пользователи. Надо посчитать текстбокс - внес число. Не надо - очистил. Ну смотрите, дело Ваше.
Я сам - дурнее всякого примера! ...
 
{quote}{login=KukLP}{date=29.01.2012 08:54}{thema=}{post}Em, я Вам уже писал, никто не горит желанием разгребаться в куче форм и макросов, для того чтоб понять, чего Вы хотите. Надо было выложить файл с одной формой с пятью чек и текстбоксами. Для примера этого с головой хватит.  
По теме: такое лучше делать на классах, но это когда чуть освоитесь в ВБА. Пока так. Сделал для двух пар контролов для образца. Хотя при таком подходе ИМХО чекбоксы там лишние. От них только дополнительные неудобства. Внес текст, а чекбокс пустой - текст очистился. Предвижу, как будут чертыхаться пользователи. Надо посчитать текстбокс - внес число. Не надо - очистил. Ну смотрите, дело Ваше.{/post}{/quote}  
Добрый день, Сергей. Правильно??? я обращаюсь???  
Если нет, то меня ввели в заблуждение.  
 
Я полностью внял вашим рекомендациям. Сделал файл как вы рекомендовали.  
Так намного проще. Спасибо.  
Вы были правы, очень неудобная форма получилась для пользователя и информативность падает.  
Значения в текстбоксах не должны стираться, т.к. они - это информация о структуре больницы, а чекбокс это всего лишь галочка которая суммирует количество в текстбоксах. Формула (Сумма чекбоксов поделенная на общий коечный фонд ЛПУ и Умноженная на 100% с двумя знаками после запятой) - ее результат выводится в поле % охвата.  
 
Можно переделать таким образом?  
 
Спасибо за понимание...
 
Я хочу добавить пример, что я хочу - точно.  
Это я делал в экселе. Там работает как мне надо. Кстати, чекбокс не должен включаться, если текстовое поле пустое. Это ограничение было в моем примере (файл прилагаю). Смотрите блок начиная со строк таблицы 90 и более...  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
 
Em, вы, наверное, Правила форума не читали. Прочитайте, это 2-я тема сверху
 
{quote}{login=}{date=30.01.2012 01:29}{thema=}{post}Em, вы, наверное, Правила форума не читали. Прочитайте, это 2-я тема сверху{/post}{/quote}  
 
Я забыл опять про размер. Один файл сделал, второй забыл.  
Я убрал все лишнее в примере. Оставил только блок - как образец с vba
 
Эмир, а зачем вам CheckBox'ы?  
 
Вроде, если ввели число в TextBox - то считаем % охвата с учётом введённого значения, если не ввели число, то не учитываем этот TextBox.  
 
Т.е. так - ввели числа в TextBox хирургия и ЛОР - вычисляем % охвата из этих 2-х чисел. А ввели только значение ЛОР - то вычисляем % охвата только из ЛОР.    
 
См. пример, мне кажется тут CheckBox'ы вообще не нужны. Заменить их на Label с названием Хирургия, ЛОР.... и т.д
 
{quote}{login=Ластик}{date=30.01.2012 02:53}{thema=}{post}Эмир, а зачем вам CheckBox'ы?  
 
Вроде, если ввели число в TextBox - то считаем % охвата с учётом введённого значения, если не ввели число, то не учитываем этот TextBox.  
 
Т.е. так - ввели числа в TextBox хирургия и ЛОР - вычисляем % охвата из этих 2-х чисел. А ввели только значение ЛОР - то вычисляем % охвата только из ЛОР.    
 
См. пример, мне кажется тут CheckBox'ы вообще не нужны. Заменить их на Label с названием Хирургия, ЛОР.... и т.д{/post}{/quote}  
 
Я поясню...  
 
Больница состоит из многих отделений и я должен знать сколько коек в каждом, я их заношу в текстовое поле, а работаю только с несколькими и я их помечаю чекбоксом, соответственно смотрю свой процент охвата. Или есть вариант проще это сделать???
 
т.е. мой макрос, который я выложил в 02:53 вы не смотрели? Может вам не нужна помощь?  
 
P.S. Выкладываю немного доработанный макрос. Но я думаю, что вы опять его не будете смотреть.
 
Спасибо за пример, а можно код немного подправить?  
Если я ввожу только койки во все поля, а в чекбоксы не ставлю галку, то потом, когда мне нужно выделить нужное мне отделение, в поле процент охвата показывает 100% при выделении одного чекбокса. И при снятии последней галки - процент охвата не равен нулю...
 
Не подумайте плохо обо мне, я им как раз и занимался.  
Спасибо огромное. Сейчас второй смотрю...  
 
<EM><FONT color=#99000><STRONG>Автору: Уже подумали плохо.  
Вы левее кнопку "ответить" видите?  
К Вашей кнопке "ответить с цитированием" нужно подвести 60-100 В напряжения :)  
Цитата - небольшая часть текста, усиливающая акцент.</STRONG></FONT>  - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
 
Вы прочитали мои мысли. Огромное спасибо.  
Мне нужно перенести этот код на форму где чекбоксов и текстовых полей будет по 24 и будут еще другие текстовые поля и комбобоксы. Данный код повлияет на них.  
Могу прислать форму, если есть время. Мне правда очень надо....
 
Эмир.    
 
1) не забывайте писать свой ник  
2) не нужно цитировать сообщения. Особенно больше 3-х. Наш форум "глючит", когда используют более 3-х цитирований. Я итак пойму, что вы со мной общаетесь.  
3) я вам дал код, дальше вы сами. (бесплатно не буду)
 
Вот файл, в нем форма 2 соответствует вашему макросу. Он не сможет повлиять на другие элементы формы???
 
Скажите, а сколько будет стоить работа над макросом в той форме, что я прислал?
 
ну, если прикрутить мой макрос к вашей форме - рублей 300.  
 
P.S. если у меня получится ))))    
P.P.S. Я смотрю у вас кода дофига в вашем файле. Если он ваш (вы писали), то вы я думаю сами сможете прикрутить мой код к вашей форме.
 
Привет. Я тут подумал, вряд-ли к-во коек в больницах меняется по сто раз на дню. Вариант простой, легкий и в чем-то даже симпатичный:-) Так же советую все списки из кода перенести на справочный лист и грузить при инициализации формы. Это в разы сократит код.  
Паш, улыбнуло - "не забывайте писать свой ник".  
Em, Вас же просили - не надо цитировать. Да еще в таких кличествах. Или ждете пока модеры Вам вливание сделают? Не советую.  
 
33766
Я сам - дурнее всякого примера! ...
 
не, ну ладно я свой ник не указываю, ТС - обычно без разницы кто ему помог, Вася Пупкин или Анатолий Петрович. Он получил решение и ушёл.    
А вот когда ты спрашиваешь ТС о чём-то, чтобы помочь решить его задание, а тут приходит сообщение от анонима и думаешь - это ответил ТС или кто-то другой, кто хочет помочь написал своё понимание процесса.
 
не, Серёг, я думаю, что скорее всего Эмиру так не пойдёт. Ты посмотри его файл post_302579.xlsm. Когда откроешь файл, нажми на кнопку "Добавить в базу ЛПУ".  
Там огромная форма с кучей контролов (куча textBox, ComboBox, куча CheckBox, плюс они в определённый момент должны отключаться (блокироваться) и включаться  
 
 
P.S. Эмир, я внедрил свой код в ваш файл, плюс дописал ещё разные процедуры и проверки. Если моя цена устраивает я вышлю вам ваш файл на почту (или выложу в вашей теме)
 
Паш, я видел ту форму. Первые файлы в этой теме и в прошлой они же. Жесть. Это гарантированный и неиссякаемый источник глюков:-) Вместо всего этого творчества пару тройку листбоксов, пару комбо. И пару вспомогательных форм для редактирования справочников. Но можно и без них. Это так, лирика. Однако весь низ(бОльшая половина формы), 50 контролов заменить одним аккуратным листбоксом - я бы подумал над этим. А уж простота обработки просто несравнима - десяток строк кода в модуле формы. Ну, автор пусть думает.
Я сам - дурнее всякого примера! ...
 
угу, я бы тоже либо на несколько форм всё это раскидал, либо ListBox'ом что-нить мутить, а так мне кажется форма перегружена информацией, но автору виднее.  
 
P.S. Эмир, я раньше 14.00 по Москве не проснусь сегодня ))))
 
А как с вами связаться? Может телефонами можно обменяться?  
А то так можно вечность переписываться и заблудиться в объяснениях чего хочешь.  
Моя электронка - emir_gasanov@inbox.ru (тел - 8-928-289-28-22).
 
Эмир, вот ваш файл с моим кодом. Потестируйте
 
Я вам очень благодарен.  
Все работает супер. Есть только один маленький недочет... - Когда вводишь больше коек чем коечный фонд программа выводит ошибку о переборе, но оставляет включенным чекбокс и кол-во коек в текстовом поле, так можно ввнести ошибку в базу. Можно это исправить? А на сообщении о переборе пусть покажет максимальное число коек, необходимых до 100%.  
В остальном все супер. Как я смогу с вами расчитаться за ваш труд? И могу ли я просить вас помочь мне дальше, чтобы быстрее закончить. При приемлемых гонорарах, я готов сотрудничать далее, т.к. времени самому все понять и найти практически нет...  
 
С уважением, Эмир.  
 
PS:  
 
Если вы согласны, то в дальнейшем прошу вас отправлять файл на мою личную почту, т.к данная табличка все-таки не для общественного пользования...
 
Эмир, сейчас посмотрю код по поводу ошибки.  
 
 
P.S. Модераторы (Дима, Юрий, Виктор), плиз, удалите эти 2 файла из темы  
 
post_302579.xlsm  
post_302855.rar
 
Эмир, я отправил подкорректированный макрос вам на почту. Потестируйте. Там же описания как можно со мной расплатиться и ответы по поводу дальнейшего сотрудничества.  
 
 
Павел
 
Спасибо. Смотрю.  
 
Тема закрыта.
Страницы: 1
Читают тему
Loading...