Страницы: 1
RSS
А была такая тема, форма как в ACCESS
 
А ведь была такая тема, и возможно не раз. Прицепить к пользовательской форме такой счетчик, чтоб в ней отображались данные в соответствии с уникальным номером, например, в столбце А. Кроме того, чтоб данные выбранной строки можно было отредактировать и и заново сохранить в этой же строке. И чтоб в конце имелось пустое место ( с номером, следующим за последним имеющимся) для ввода новых данных...   Наверное я очень много хочу, простите меня пожалуйста.  
 
Поиском желаемое искал, несколько подобных тем нашел, но не обнаружил там конечного результата, похоже темы утонули. Поправьте меня если я плохо искал (дайте ссылку).  
 
И еще, если удастся такое, то господа модераторы, поместите качественный вариант вышепопрошенного в копилочку, не я один такой, видимо.
 
Такую Форму нужно создавать под конкретную таблицу. Желательно также знать тип данных в каждом поле.
 
The_Prist, спасибо, почти то что нужно, но, во первых работает только о 32 полей (определил в 2007 методом тыка), во вторых, хотелось бы определенной красоты, которую каждый сможет нарисовать под себя. А эта шаблонная форма до ужаса скучна и неприглядна.    
Доделаю конкретный примерчик, так вытащу еще эту тему, а пока и на том спасибо.
 
Можно я в соавторы? :)  
Дело в том, что хотел создать похожую тему.  
Чтобы не бить по шаловливым ручкам, данные в таблицу заносятся через форму ввода. Корректировку данных тоже задумалось сделать через форму - нашли нужную строку (данные этой строки отображаются в полях разных -box), отредактировали нужное, вставили в таблицу. Думаю, реализуется несложно.  
Но в форму для корректировки должны попадать не все строки таблицы, а только отфильтрованные по конкретным параметрам (параметры меняются). Например, в столбце имена ответственных за работу. Пришел Вася, выбрал для формы только свои строки... Такой пунктик можно реализовать?  
Позже упрощу свое "творение" для примера.
 
Форма с несколькими фильтрами у меня есть. Буду дома - сброшу на почту.
 
Спасибо, подожду.
 
И в копилку, в копилку пожалуйста
 
А что, господа, может, общими усилиями сделаем универсальное решение?  
 
Часто надо быстро сделать форму ввода данных для некой таблицы, а рисовать каждый раз однотипную форму с кучей полей как-то напрягает...  
 
Где-то здесь на форуме видел подобное решение - вроде The_Prist выкладывал (там на форме создавались текстбоксы под каждое поле таблицы)  
 
Но хотелось бы более универсального решения (времени на реализацию уйдёт много, но зато потом формы ввода можно будет создать под любую таблицу несколькими нажатиями мыши)  
 
Как я вижу работу подобного макроса:  
1) Выделяем таблицу с заголовками, нажимаем волшебную кнопку.  
2) Макрос из надстройки запускает динамически формируемую форму со списком полей таблицы, где мы для каждого поля таблицы из комбобокса выбираем тип поля (доступные поля - комбобокс, текстбоксТекст, текстбоксСМаскойВвода, текстбоксДатаСКнопкойВыбораИзКалендаря, OptionButton, CheckBox, ТекстбоксСоSpinButton)  
3) После того, как мы определились с типом каждого поля таблицы, макрос добавляет в файл с таблицей новую форму, где для каждого поля создан соответствующий элемент управления (со сгруппированным с ним Label-ом сверху - для описания поля)  
Обработку событий полей я бы возложил на классы - чтобы, во-первых, сделать обработку универсальной, а во-вторых, не перегружать форму лишним кодом.  
 
4) Автоматически на форму сверху добавляется 2 комбобокса - для фильтрации таблицы:  
1-й комбобокс - для выбора поля, по которому фильтруем, 2-й комбобокс - для выбора параметра фильтра (из заничений этого поля)  
 
 
Всё это, конечно, потребует немало усилий по реализации (алгоритм-то я себе представляю, но кода писать надо много), зато потом это решение сэкономит кучу времени - по нажатию кнопки в файле появятся 2 формы (основная, для ввода, и форма-календарь), стандартный модуль + несколько модулей классов.  
 
Какие мысли по этому поводу?  
Одному мне делать это пока некогда, а вот если взяться за это вместе - может получиться хорошая штука.
 
..."но зато потом формы ввода можно будет создать под любую таблицу несколькими нажатиями мыши)".  
Это было бы, наверное, так здорово!  
 
Граждане, ведь многим, наверняка, нужна такая штучка!  
Давайте сбросимся, что-ли; работа-то большая!
 
Бегу, бегу, бегу, если смогу - помогу.
 
:)
 
{quote}{login=EducatedFool}{date=29.05.2010 02:01}{thema=}{post}Выделяем таблицу с заголовками, нажимаем волшебную кнопку.{/post}{/quote}  
Чур, я эту кнопку делаю.
 

Было немного свободного времени - решил начать реализовывать сию чудную программу. <BR>Вот что пока получилось: http://excelvba.ru/InputForm <BR>(реализовал только чтение названий и распознавание типов полей в таблице Excel) Дальше посмотрим, что получится...

 
Поднимаю утонувшую тему.    
Помнится, была одна очень продуктивная тема с калькулятором. Хотелось бы и тут такого же энтузазизма.  
К сожалению сам в макросах не силен, посмотрел разработку от EducatedFool и уже поплыл, а это еще только начало пути.
 
{quote}{login=Pankratd}{date=01.06.2010 09:25}{thema=}{post}  
Помнится, была одна очень продуктивная тема с калькулятором. Хотелось бы и тут такого же энтузиазма.{/post}{/quote}  
 
Даа, были люди в русских селениях © )))  Не тот народ пошёл, не тот )))  
 
 
P.S. шутю )
 
Продолжаю потихоньку делать ту самую программу, но тут по ходу работы возникла проблема.  
 
Может, кто из спецов что подскажет...  
 
Написал 2 макроса - для добавления\удаления элементов управления на форму в DesignMode.  
Если эти макросы запускать нажатием F5 из редактора VBE - всё работает как надо  
(не всегда, но в 90-95% случаев)  
Если же эти макросы мы запускаем с кнопок на листе - в большистве случаев макросы отрабатывают с ошибкой (срабатывают со 2-3 раза)  
 
В чём проблема? Что я делаю не так?  
 
(в примере файла есть красная и зелёная кнопки для запуска этих макросов; нажатие желтой кнопки отображает форму для просмотра результата)  
Если вместо одного нажатия красной (или зеленой) кнопки выполнить 3 нажатия подряд - результат обычно достигается.  
 
Варианты с добавлением ЭУ в режиме Runtime не предлагать (тут всё работает как надо - делал не раз, но в данной программе надо, чтобы контролы добавлялись на форму навсегда.)  
 
 
Файл находится по прежней ссылке: http://excelvba.ru/InputForm
Страницы: 1
Читают тему
Наверх
Loading...