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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2013, 14:08   #1
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 148
По умолчанию Линейный график VBA

Добрый день... Где то видел в видео обзорах линейный график такого рода...

В строках список товара
В столбцах недельные продажи

Задачка...
При активации ячейки товара показать линейный график
при активизации ячейки другого товара в этом же графике показать линейный график продаж товара .
При выделении 2 (ячеек наименовании товара) , построить 2 линии продаж в одном графике...

Очень понравилось, может у кого то уже есть такого рода... Искал здесь в поиске не нашел ничего подобного... Спасибо
Вложения
Тип файла: zip график123.zip (10.5 Кб, 9 просмотров)

Последний раз редактировалось Slavatron1984; 29.08.2013 в 14:11.
Slavatron1984 вне форума Ответить с цитированием
Старый 29.08.2013, 18:12   #2
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

Вы что-то вроде такого хотели (выбирайте товары в а7:а22)?
пример 1 -с удалением всех диаграмм и добавление новой
пример 2 - с добавлением новой и дальнейшем ее изменении

правда товар7 не корректно отображаются
Вложения
Тип файла: rar график.rar (23.5 Кб, 13 просмотров)
Единственный способ стать умнее, играть с более умным противником...

Последний раз редактировалось staniiislav; 29.08.2013 в 19:30.
staniiislav вне форума Ответить с цитированием
Старый 30.08.2013, 01:53   #3
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 148
По умолчанию

Станислав все работает четко, если бы еще можно было выбрать к примеру товар 1 и товар 5... В графике можно выбирать для сравнения только товар соседний... Хотя для меня этот вариант более чем устраивает... Спасибо за помощь Очень нужный для логистов график...
Slavatron1984 вне форума Ответить с цитированием
Старый 30.08.2013, 01:56   #4
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 148
По умолчанию

Да 7 строка не работает... Жаль
Slavatron1984 вне форума Ответить с цитированием
Старый 30.08.2013, 10:42   #5
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 148
По умолчанию

Заработал и строка 7-го товара
Вложения
Тип файла: zip график.zip (22.6 Кб, 12 просмотров)
Slavatron1984 вне форума Ответить с цитированием
Старый 30.08.2013, 16:19   #6
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

Цитата:
Сообщение от Slavatron1984 Посмотреть сообщение
Заработал и строка 7-го товара
Благодаря данной статье и соответственно автору The_Prist
статья:
http://www.excel-vba.ru/chto-umeet-e...-lyuboj-knige/

получилось вот такое чудо
Вложения
Тип файла: rar Линейный график VBA 2.rar (23.3 Кб, 22 просмотров)
Единственный способ стать умнее, играть с более умным противником...
staniiislav вне форума Ответить с цитированием
Старый 30.08.2013, 17:16   #7
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

даже чет я перемудрил совсем (наверное и не правильно сделать в добавок )
Этого будет достаточно (в модуль листа поместить):

Код:
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A7:A22")) Is Nothing Then
    Dim r As Range, rD As Range
    Dim IChart, n&
    Set rD = Range("A7:P22")
    Set r = Intersect(rD, Target.EntireRow)
    For Each IChart In ChartObjects
        If IChart.Name = "д1" Then n = 1: Exit For
    Next
    If Not n = 1 Then
        Application.ScreenUpdating = False
        ActiveSheet.Shapes.AddChart.Select
        ActiveChart.Parent.Name = "д1"
        ActiveChart.ChartType = xlLineMarkers
        ActiveChart.SetSourceData Source:=r
        ActiveChart.SeriesCollection(1).XValues = Range("недели2").Value
        ActiveChart.ChartType = xlLineMarkers
        Application.ScreenUpdating = True
    Else
        With ChartObjects("д1").Chart
            .SetSourceData Source:=r
            .SeriesCollection(1).XValues = Range("недели2").Value
            .ChartType = xlLineMarkers
        End With
    End If
End If
End Sub
Единственный способ стать умнее, играть с более умным противником...

Последний раз редактировалось staniiislav; 30.08.2013 в 17:44.
staniiislav вне форума Ответить с цитированием
Старый 30.08.2013, 22:59   #8
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 148
По умолчанию

Спасибо Все Супер... Только не могу последним примером воспользоваться при копировании кода русские буквы меняются на вопросительный знак и изменить вручную не дает русскими.. У меня офис 2013... Но предпоследний пример меня устраивает в полном объеме...Спасибо
Slavatron1984 вне форума Ответить с цитированием
Старый 31.08.2013, 13:14   #9
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

Цитата:
Сообщение от Slavatron1984 Посмотреть сообщение
Спасибо Все Супер... Только не могу последним примером воспользоваться при копировании кода русские буквы меняются на вопросительный знак и изменить вручную не дает русскими.. У меня офис 2013... Но предпоследний пример меня устраивает в полном объеме...Спасибо
странно... вот пример с последним кодом
Вложения
Тип файла: rar Линейный график VBA 2.rar (22.8 Кб, 4 просмотров)
Единственный способ стать умнее, играть с более умным противником...
staniiislav вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Затабулировать функцию. график указанной функции и график касательной к ней в точке с абсциссой AntonKalinin01 Помощь студентам 0 26.05.2013 07:18
График сменности (график работы) A1enushka Microsoft Office Excel 2 03.02.2012 18:26
Создать график через VBA в Excel lopuxi Microsoft Office Excel 1 16.10.2009 16:06
Программно график VBA Excell Kvant Microsoft Office Excel 2 30.10.2008 18:56
График VBA Dubineanschi Microsoft Office Excel 1 10.07.2008 12:03