2014-02-06 5 views
5

Я хотел бы знать, есть ли способ установить свойство rowource диаграммы в моем отчете во время выполнения.Как динамически изменить исходный код диаграммы доступа

Я намерен иметь диаграмму в разделе заголовка группы отчетов. Строковый источник этой диаграммы должен обновляться в соответствии со значением заголовка группы.

У меня ошибка 2455 - неверная ссылка на свойство RowSource, когда я пытался это сделать в VBA.

Я пользуюсь Access 2003.

Спасибо.

+0

Да. Там есть. Вы уже пробовали? – david

+0

@ david да, я несколько раз пробовал по-разному. Но всякий раз, когда я пытался присвоить значение свойству RowSource, я получил ошибку 2455 – got2nosth

+0

Вы можете динамически заменить диаграмму на новую диаграмму с другим источником строк, но предлагаемое вами решение обычно лучше – david

ответ

5

Я только что получил вдохновение после поиска через Интернет в течение некоторого времени. Вот решение, которое я в настоящее время реализую.

Во-первых, верно, что свойство rowource диаграммы не может быть изменено программно во время выполнения. Однако мы можем сделать, чтобы свойство rowsource являлось объектом Query и позже обновляло этот объект запроса в VBA.

Это часть моего кода.

CurrentDb.QueryDefs("myQuery").SQL = "a new query" 
Me.myChart.Requery 

Я установил источник строки моего диаграммы в объект запроса с именем «myQuery». Я разместил вышеуказанный код в событии Format моего заголовка группы, поэтому каждый раз, когда загружается заголовок группы, я могу использовать значение заголовка моей группы для обновления объекта Query.

+0

. Вы можете использовать локальную таблицу как источник данных, и пополнить его для каждой группы/страницы/элемента/диаграммы. Это пригодится, если у вас много диаграмм, основанных на простых подмножествах сложных данных. В зависимости от дизайна отчета вам может не понадобиться запрос - в некоторых местах диаграммы будут запрашиваться автоматически – david

+0

Спасибо @david Я наклонил что-то новое. – got2nosth

Смежные вопросы