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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.08.2011, 03:15   #1
maratgub
Новичок
Джуниор
 
Регистрация: 10.08.2011
Сообщений: 3
По умолчанию Обновление данных через комбо боксы

Мне в наследство достался Эксел файл с большой кучей макросов. На заглавной странице есть куча drop-down combo боксов, которые работают как фильтры для таблиц и чартов на той же странице. Я так понимаю, после выбора какого-то параметра, то бишь, на событие Update этого drop down бокса запускается какой-то макрос. Или может фильтр.

После копания в файле, выяснил, что при выборе значения в списке комбо бокса обнавляются определенные скрытые ячейки, видимо по значениям этих ячеек обновляются какие-то фильтры, и данные в таблице и графики привязанные к этой таблице тоже обновляются. Я не могу разобраться, каким образом это происходит. Где мне отловить тот фильтр, или макрос который запускается по событию обновления той ячейки, или комбобокса. Как я уже написал, в файле куча макросов, но к самой странице никакие макросы не привязаны.

Подскажите, в какую сторону копать, как обнаружить, каким образом таблицы обновляются? Для уточнения, я довольно опытный Access программист, с соотвествующим багажом, Эксел знаю неплохо как юзверь, но программировал в нем мало.

Спасибо.
maratgub вне форума Ответить с цитированием
Старый 10.08.2011, 09:22   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

ищите это
Private Sub Worksheet_Change(ByVal Target as Range)
в программном модуле листа (правой кнопкой по ярлыку листа / исходный текст)
скорее всего все начинается с этой процдуры
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.08.2011, 20:52   #3
maratgub
Новичок
Джуниор
 
Регистрация: 10.08.2011
Сообщений: 3
По умолчанию

Игорь, большое спасибо за ответ.

К сожалению модуль Спредшита девственно чист. На всякий случай поискал этот sub по всему проекту, там вообще ничего похожего нет. Как еще может система "отловить" изменение данный в определенной ячейке?
maratgub вне форума Ответить с цитированием
Старый 10.08.2011, 21:12   #4
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

ПКМ по комбобоксу-назначить макрос. Появится диал. окно. в строке "имя макроса" будет имя. Нажмете "Правка" - перейдете в текст макроса. Это если КБ из форм. Из элементов управления еще проще. ПКМ - Исходный текст.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 10.08.2011, 22:38   #5
maratgub
Новичок
Джуниор
 
Регистрация: 10.08.2011
Сообщений: 3
По умолчанию

Блин разобрался, через одно место гланды удаляют. Там вообще без макросов это сделанно.

Когда меняется значение в этой скрытой ячейке на табе "Chart", формула в другой скрытой ячейке в другом табе, содержащем данные для сводной таблицы в табе Chart меняет значение ячейки на Yes, соотвественно формула в ячейках сводной таблице Чарта читает значения тех строк которые содержат в себе значение "Yes".

Убицца ап стенку.
maratgub вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как организовать обновление картинки в программе через интернет? lypyotr Помощь студентам 3 19.07.2011 21:47
автоматическое обновление таблице через запрос sql eda Microsoft Office Excel 8 19.04.2011 12:47
Обновление БД через инет!!! sPan4eZ БД в Delphi 1 18.09.2009 10:28
Обновление списка данных без потери данных в переменных VaBank БД в Delphi 13 03.06.2009 10:47
Установка маски ввода 0000.0 в текст-боксы на Windows Form'е lexluther Общие вопросы .NET 2 12.08.2008 08:45