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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2011, 02:18   #1
TigR_[RUZ]
 
Регистрация: 20.03.2011
Сообщений: 5
По умолчанию Построение графика из массива

Всем доброго времени суток! Сочиняю макрос на VBA и уже дошел до стадии завершения, но запнулся на стадии построения графика. Итак: имеется двумерный массив (при изменении начальных условий количество строк меняется, столбцов 3). В массиве данные имеют структуру: (Иванов И.И. ; 7 ; 81,5). на основании массива строю нестандартный график типа "График/гистограмма2".
Проблема: как задать исходные данные графика из массива?

Особенность: хочется, чтоб исходные данные график забирал напрямую из массива, допускается чтоб исходные данные забирал из ячеек на листе. Со сводной связываться нет желания совсем. Количество строк в массиве фактически не может превышать 12 (но думаю это не имеет значения). График лучше создавать на листе, а не отдельным листом.

Помогите с этой проблемой, готов рассмотреть любые идеи, может есть ссылки на такую тему...

Последний раз редактировалось TigR_[RUZ]; 21.03.2011 в 02:21. Причина: Уточнение особенности
TigR_[RUZ] вне форума Ответить с цитированием
Старый 21.03.2011, 02:26   #2
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Думаете, умней других?
http://www.planetaexcel.ru/forum.php?thread_id=25735
Тут такие же люди. Помогут, но не хитровыеженным. Объясните хотя бы, чем те решения не устраивают.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 21.03.2011, 06:56   #3
TigR_[RUZ]
 
Регистрация: 20.03.2011
Сообщений: 5
По умолчанию

Да нет, я так совсем не думаю... Уважаемый kuklp, те решения основываются на сводной таблицы, просто я не уверен, что люди, которые будут пользоваться этой программой ведают о существовании сводных таблиц и что их нужно обновлять.
мне интересно только то, как связать исх.данные и массив. это пара строчек.
нашел вот следующее:
ActiveChart.SeriesCollection(1).XVa lues = "={" & Left(xs, Len(xs) - 1) & "}"
ActiveChart.SeriesCollection(1).Val ues = "={" & Left(ys, Len(ys) - 1) & "}"
на http://forum.codenet.ru/archive/index.php/t-17455.html
только не понятно откуда здесь ноги растут?
TigR_[RUZ] вне форума Ответить с цитированием
Старый 21.03.2011, 07:36   #4
TigR_[RUZ]
 
Регистрация: 20.03.2011
Сообщений: 5
По умолчанию

kuklp, сложность еще состоит в том как из полученной таблицы (х * 3) сделать сводную?
TigR_[RUZ] вне форума Ответить с цитированием
Старый 21.03.2011, 08:58   #5
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Да что Вы! Решения от Михаил и kim таблицами, от nilem и Hugo - макросами. Поэтому и спрашиваю, Что не так? Там http://www.planetaexcel.ru/forum.php?thread_id=25735 Вы написали: " Тему можно считать закрытой.". Так может в ТОЙ теме объясните, что Вас не устраивает? Я бы промолчал. Но когда люди тратят на Вас время, способности... Еще раз - что не так там?
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 21.03.2011 в 09:00.
kuklp вне форума Ответить с цитированием
Старый 21.03.2011, 09:27   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

не согласен по сути этой полемики:

в Библии - заданный на разных форумах один и тот же вопрос не встречается среди запрещающих заповедей и тем более среди 7 смертных грехов.

ни на одном из форумов не читал в правилах "если Вы задали вопрос здесь - Вы не имеете права задать его еще где-либо!" - а даже если бы такое и было - это звучит довольно наивно.

интернет демократичное пространство. TigR_[RUZ], Вы вольны задать свой вопрос на стольких форумах, на скольких считаете нужным, не смотря на то, что это не совпадает с мнением многоуважаемого kuklp.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 21.03.2011, 10:06   #7
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Игорь, при всем уважении... Спляши. Я бы и сам сплясал, но вот беда, не знаю как. Смотри мои посты, касаемые вопроса(хотя бы на этом форуме). Отсюда и вопрос. Я понимаю, ты не согласен со мной. Уважаю твое мнение. Но и мне позволь иметь свое. ТС пишет: "Сочиняю макрос на VBA и уже дошел до стадии завершения". Игорь(Hugo) и Николай(Nilem, а так же Михаил, kim) в свой выходной день просто счастливы были бы понаблюдать, как ТС на разных форумах: "Сочиняю макрос на VBA и уже дошел ...". Это при том, что вопрос никак не поставлен. Верней поставлен так: "Все же если у кого будут какие идеи - пишите, будет очень интересно рассмотреть их!" и так: "Тему можно считать закрытой". Ну, о своем отношении к подобному, я тебе писал ранее, в личке:-).
Еще раз, с уважением, Сергей.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 21.03.2011, 20:08   #8
TigR_[RUZ]
 
Регистрация: 20.03.2011
Сообщений: 5
По умолчанию

В общем вопрос решился методом построения сводной таблицы, хоть и не хотелось на листе лишнего размещать. Всем спасибо!!! Закроем эту тему.
TigR_[RUZ] вне форума Ответить с цитированием
Старый 21.03.2011, 20:29   #9
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Ну, TigR_[RUZ], приймите мой респект за то, что отписались в теме. Никакой иронии. Просто не ожидал.
kuklp.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 26.03.2011, 23:38   #10
TigR_[RUZ]
 
Регистрация: 20.03.2011
Сообщений: 5
По умолчанию

А ларчик то просто открывался...

Может кому понадобится потом... x() - двумерный массив с kol_str_x числом строк и 3 столбцами.

[A1].Value = "ФИО": [B1].Value = "Кол-во": [C1].Value = "%"
[A2:B2:C2].Resize(UBound(x)).Value = x()

Worksheets("1").Activate
Range(Cells(1, 1), Cells(kol_str_x+1, 3)).Select '+1 учитывает заголовки в 1 строке (в массив х() не введены)
Charts.Add
ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:= _
"График|гистограмма 2"
ActiveChart.SetSourceData Source:=Sheets("1").Range(Cells(1, 1), Cells(kol_str_x + 1, 3)), _
PlotBy:=xlColumns
TigR_[RUZ] вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Построение графика radiokarazinec Общие вопросы Delphi 14 24.02.2011 23:39
построение Графика на с++ 4ika Помощь студентам 0 04.05.2010 20:37
Построение графика в TP XanderV13 Помощь студентам 0 22.11.2009 10:55
Построение графика из массива sistus Общие вопросы C/C++ 1 24.10.2009 20:17
Построение графика! kiling Мультимедиа в Delphi 0 19.05.2009 21:03