0 / 0 / 0
Регистрация: 22.05.2012
Сообщений: 4
|
||||||
1 | ||||||
Динамическое изменение листа при переключении между контролами на этом же листе22.05.2012, 19:49. Показов 1821. Ответов 6
Метки нет Все метки)
(
Доброго времени суток, уважаемые КиберПрофи!
Прошу не бейте тапками бедную девушку, мне и так досталось от VBA, потому что я возможно повторюсь с вопросом заданным неоднократно... Ну и за то, что так много букафф... Инет облазила вдоль и поперек - не первый день вопрос ребром! ВСЕ ПОЛНОСТЬЮ ЗА МЕНЯ ПИСАТЬ НЕ НУЖНО, А ЗА ЛЮБУЮ ПОМОЩЬ ИЛИ ИДЕЮ СПАСИБО ЗАРАНЕЕ Объясню суть Проект: Интерфейс и вся обработка в Excel 2010 c поддержкой макросов. БД в Access 2010. Нужно реализовать просмотр справочников (там справочник Городов, улиц, сотрудников и т.д.) Их много и они разные - отличаются, естественно, количеством информации в них, то есть полей: в одних только код и название, в других - еще масса доп. инфы. Не суть важно. В идеале был бы вариант в верхней части листа - ввод, просмотр и редактирование записей с помощью текстовых полей, выпадающих списков, флажков и т.п. Кнопки - автофигуры, но можно и обычные. В нижней части - динамическая таблица, которая изменяется сразу после ввода данных в определенное поле или на крайний случай - по кнопке. Естественно в БД тоже все меняется автоматически. Переключение между справочниками любое от меню до гиперссылок, можно даже какие-нить вкладки - тут все равно. А ТЕПЕРЬ САМА ПРОБЛЕМА ума не прилажу как обновлять один и тот же лист под определенный справочник, я имею ввиду подмену контролов и таблицы соответственно. Может знаете какие нибудь примеры самые элементарные (мне бы принцип работы такой динамики понять) Например: - первый справочник: текстовое поле: ввод - Таблица: вставка в ячейку - БД: изменение записей - любой другой справочник - другие контролы, другая таблица НА ЭТОМ ЖЕ САМОМ ЛИСТЕ И ВСЕ ДИНАМИЧЕСКИ!!! (По поводу БД сразу скажу - коннектиться нужно программно, а не средствами Excel-Access, нужен универсальный интерфейс подключения, т.к. возможен переход на СУБД SQL Server 2008) Пробовала такие варианты: 1. непосредственно на листе - интерфейс "умная таблица" - не получилось - не смогла разобраться с программированием этой самой таблицы (Какой это объект? Как выполняется обработка событий, внедрение в ее ячейки контролов типа ComboBox или CheckBox, добавление, удаление вставка записей, запрет пользователю редактирования определенных полей... - в общем никак.Переход по справочникам - выпадающий список. Работа с записями по приципу DataForm (формы данных) 2. Пробовала вставить МultiPage прямо на лист (для переключения между справочниками (удобно очень) верх оформила как и на листе контролами, а с низом стала проблема где взять контрол Таблица типа DataGrid? Было 2 варианта (опять же с помощью инета) a) MS FlexGrid и в старом и в новом варианте. Но только он не устанавливается - говорит что моя система не та Your system has not been modified[Windows7]; б) Spreadsheet. Этот контрол поддерживается, Но ограничить нужное количество строк с столбцов весьма проблематично - только с помощью защиты нужной области. Вроде в справке написано, что почти все свойства и методы этого чуда такие как и у обычной экселевской таблицы. Но при выполнении такого кода ругается матом
Вообщем, дорогие форумчане не буду дальше нагружать а просто попрошу помощи - любая инфа или мысли по теме для меня оч. Нужны Всем откликнувшимся СПАСИБО
0
|
|
22.05.2012, 19:49 | |
Ответы с готовыми решениями:
6
Заполнение 2 листа данными из 3-го листа при событии на 1-м листе Динамическое изменение данных на листе
Изменение содержимого контейнера при переключении радиокнопки |
0 / 0 / 0
Регистрация: 22.05.2012
Сообщений: 4
|
|
24.05.2012, 11:37 [ТС] | 2 |
Граждане, уважаемые. Пол-суток прошло, ну подскажите хоть что-нибудь...
Как в таблицу в определенные ячейки вставить контролы - это по поводу того чтобы вместо true-false в столбце стоял checkbox как при переключении ну например по элементам combobox -а обновлять текущий лист с другими контролами и таблицей Добавлено через 14 часов 41 минуту Нормально сама себе отвечаю... ![]() Видно плохо рыла носом... Нашла ответ на этот вопрос у Мастера-гуру EducatedFool. Поистине МАСТЕР своего дела (Это ж надо додуматься обычным шрифтом галочки в ячейках проставлять - а как все до банального просто. Оч. хочется выучиться до Вашего уровня, Мастер ОГРОМНОЕ ВАМ СПАСИБО - Вы ответили на мой вопрос, не отвечая. ![]() Еще бы кто подсказал ответ на второй вопрос... Ладно, буду пока рыть дальше, может опять нарою, что мне нужно. Все равно ВСЕ молчат
0
|
200 / 98 / 2
Регистрация: 24.09.2011
Сообщений: 261
|
|
24.05.2012, 16:38 | 3 |
Nika.dn, так много букв, так не просто разобраться... Нельзя ли как-нибудь выделить главные 2-3 предложения тэгами [b], хотя бы?
0
|
0 / 0 / 0
Регистрация: 22.05.2012
Сообщений: 4
|
|
24.05.2012, 19:26 [ТС] | 4 |
Можно я цитатами как-нить..
Объясню суть Проект: Интерфейс и вся обработка в Excel 2010 c поддержкой макросов. БД в Access 2010. Нужно реализовать просмотр справочников на одном и том же листе. В верхней части листа - контролы для работы со справочниками. В нижней части - динамическая таблица, которая изменяется сразу после ввода данных в определенное поле или на крайний случай - по кнопке. B БД тоже все меняется при изменении в таблице. ... А ТЕПЕРЬ САМА ПРОБЛЕМА: как обновлять один и тот же лист, выбрав тот или иной справочник, контролы и таблица предыдущего справочника, который был отображен до этого заменяются на контролы и таблицу вновь выбранного справочника соответственно. Выбор того или иного справочника находится либо в меню "Сравочники", либо в combobox на ЭТОМ ЖЕ САМОМ листе. (скорее всего через меню сделаю) Всем откликнувшимся СПАСИБО P.S. Алгоритм как это сделать я знаю, у меня проблема именно с кодом VBA...
0
|
200 / 98 / 2
Регистрация: 24.09.2011
Сообщений: 261
|
|
25.05.2012, 09:17 | 5 |
"обновлять один и тот же лист" - т.е. вы хотите загружать новые данные на этот лист? Ну, тогда, видимо, надо в обработке события ComboBox_Change написать процедуру обновления данных. Я правильно понял?
0
|
0 / 0 / 0
Регистрация: 22.05.2012
Сообщений: 4
|
|
25.05.2012, 18:48 [ТС] | 6 |
Да, именно так. Тока не знаю как. Хотя бы на одном контроле и 1 столбце таблицы покажите, пожалуйста
0
|
200 / 98 / 2
Регистрация: 24.09.2011
Сообщений: 261
|
|
28.05.2012, 16:01 | 7 |
Nika.dn, извините, я в объектной модели Access не ориентируюсь =(
У вас ведь таблица в Access? Добавлено через 49 минут Если хочется сделать универсально (назависимо от конкретной базы данных), то надо делать через драйвер БД. В виндузе есть ODBC. Кажется он встроенный, но по умолчанию не включен. Я бы на вашем месте погуглил запросом "ODBC Excel", или что-то вроде того
0
|
28.05.2012, 16:01 | |
28.05.2012, 16:01 | |
Помогаю со студенческими работами здесь
7
Изменение содержимого контейнера при переключении радиокнопки
Ошибка при переключении между формами Заставить кнопку на листе Excel не перемещаться при прокрутке листа Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |