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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2009, 09:42   #1
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию перенос(скрытие) графика

Привет. Имеются 2 графика, которых необходимо разместить на одном листе, в одном и том же месте, но отображать только тот, который соответствует условию.
Условия будут задавать стрелки Sub SpinButton1_Change
(условие для 1 графика - ячейка А1=0, условие для 2 графика А1=1)
ruavia3 вне форума Ответить с цитированием
Старый 31.03.2009, 09:51   #2
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

Выложите пример с графиками
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 31.03.2009, 11:02   #3
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

К сожалению, не могу выложить файл. А есть какие-нибудь условия (например, если значение ячейки равно 1) при которых график смещался бы на 100 ячеек вниз(или пунктов)?
ruavia3 вне форума Ответить с цитированием
Старый 31.03.2009, 11:33   #4
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

Смещение графиков это VBA. Выложите пример. Если исходный файл выложить нельзя то создайте файл с примерными данными. Решений может быть несколько..
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 31.03.2009, 12:04   #5
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

Цитата:
Сообщение от ruavia3 Посмотреть сообщение
Привет. Имеются 2 графика, которых необходимо разместить на одном листе, в одном и том же месте, но отображать только тот, который соответствует условию.
Условия будут задавать стрелки Sub SpinButton1_Change
(условие для 1 графика - ячейка А1=0, условие для 2 графика А1=1)
Вопрос?
Зачем нужно делать два графика на одном листе. Ведь можно сделать один, а потом используя макрос подставлять разные значения для графика.
Для этого нужно сделать один график. После чего запустить макрорекодер и изменить параметры графика т.е. перерисовать его, после чего остановить макрорекодер и снова запустить чтобы получить вернуть первоночальный график. Полученные макросы лягут в основу Вашей программы.
Я таким образом изобразил пять разнообразных графиков, они все были динамическими - время изменения значений для графика 15 секунд
Юнлинг вне форума Ответить с цитированием
Старый 31.03.2009, 14:32   #6
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Макрос необходимо привязать к SpinButton1 (который ссылается на ячейку А1). Если А1 = 0, то в поле С2:Н18 *оно выделено жирным* вставляется график Chart2, a если А1=1, то в поле вставляется Chart5.

* к графикам Chart2 и Chart5 прикреплены scroll bar-ы, которые необходимо убирать и вставлять вместе с графиками.
Вложения
Тип файла: rar file.rar (12.7 Кб, 14 просмотров)
ruavia3 вне форума Ответить с цитированием
Старый 31.03.2009, 14:38   #7
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Юнлинг, а значения осей можно также можно изменить как и график? У меня значения выводимых показателей варируются значительно, т.е. на одном графике показатели в тысячах, а на другом в десятых долях.
ruavia3 вне форума Ответить с цитированием
Старый 31.03.2009, 14:52   #8
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

Вот действующий пример. Но в таких случаях лучше не использовать элементы ActiveX. Лучше обойтись элементами формы.
Вложения
Тип файла: rar file.rar (16.3 Кб, 13 просмотров)
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 31.03.2009, 15:17   #9
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

Цитата:
Сообщение от ruavia3 Посмотреть сообщение
Юнлинг, а значения осей можно также можно изменить как и график? У меня значения выводимых показателей варируются значительно, т.е. на одном графике показатели в тысячах, а на другом в десятых долях.
Я в своей программе, как говорил в предудущей посте изменяя сделал пять графиков. Сади сам
первое потребление электроэнергии - 1.4 до 2,5 МВт
потребление газа - 3500 до 11000 к.м.п.н.у.
произведенная продукция - 35...50 тн.час
удельная норма по электроэнергии - 0,02 ... 0,03
удельная норма по газу - 0,004 до 0,01
просто помимо данных нужно изменять диапазон, я это делал так
Код:
   ActiveChart.Axes(xlValue).Select
   With ActiveChart.Axes(xlValue)
       .MinimumScale = mizg(i)
       .MaximumScale = mazg(i)
....
    End With
где mizg(i) - минимальное значение
mazg(i) -максимальное значение


P.S. к сожалению всю прогу выложит не могу. коммерческая тайна. но кусок пожалуйста
Юнлинг вне форума Ответить с цитированием
Старый 31.03.2009, 16:42   #10
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

А к моему файлику не могли бы вставить код?
ruavia3 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрытие игры Олег86 Операционные системы общие вопросы 2 30.01.2009 15:35
скрытие программы filin2323 Общие вопросы Delphi 2 04.05.2008 19:38
Скрытие формы SERG1980 Общие вопросы Delphi 3 23.10.2007 17:28
Скрытие программы Romzes2 Общие вопросы Delphi 8 28.08.2007 21:53
Скрытие процесса komex Безопасность, Шифрование 11 18.12.2006 23:04