макрос: перенос значения уравнения тренда, с диаграммы, в ячейку

Автор kristy83, 01.02.2012, 10:18

« назад - далее »

kristy83

Добрый день!
У меня такая задача: Необходимо чтобы в ячейку переносилось и автоматически обновлялось уравнение с диаграммы(уравнение линии тренда).
Пример (Cм. файл Perenos2.xls во вложении.)
Нужно чтобы в ячейку G7  переносилось уравнение линии тренда с диаграммы, т.е. в текущем случае y = 0,3107x3 - 2,7445x2 + 11,854x - 9,1575, а в ячейку G8 коэффициент R2 = 0,9202. И эти ячейки автоматически обновлялись в случае изменения уравнения на диаграмме.
  Попробовала записать макрос(см ниже) но он не заработал.

Sub Макрос2()
    ActiveSheet.ChartObjects("Диагр. 4").Activate
    ActiveChart.SeriesCollection(1).Trendlines(1).DataLabel.Select
    ActiveWindow.Visible = False
    Windows("1.xls").Activate
    Range("G7").Select
    ActiveSheet.Paste
End Sub

Сразу хочу оговориться, что я не программист и поправить что-нибудь в макросе своими руками вряд ли получится.

Жду вашей помощи. Заранее спасибо.

exceleved

Код: правый клик по ярлычку листа - Исходный текст.
Можно в первой ячейке верхние символы сделать.

kristy83


kristy83

Цитата: exceleved от 01.02.2012, 11:54
Код: правый клик по ярлычку листа - Исходный текст.
Можно в первой ячейке верхние символы сделать.

exceleved, а не подскажите как.., ну чтобы сразу степени в верхнем регистре были?  :)


exceleved

Пробуйте.
Днем я попытался сделать это в 2007, но никак не мог достучаться до свойства DataLabel.Characters.
Зато там R2 получается без доп. усилий, т.к. используется особый символ для верхней двойки.
Сейчас в 2000 с DataLabel.Characters все получилось. С R2 пока ничего делать не стал, надо сначала выяснить, будет ли работать в 2007.

kristy83

Цитата: exceleved от 01.02.2012, 23:57
Пробуйте.
Днем я попытался сделать это в 2007, но никак не мог достучаться до свойства DataLabel.Characters.
Зато там R2 получается без доп. усилий, т.к. используется особый символ для верхней двойки.
Сейчас в 2000 с DataLabel.Characters все получилось. С R2 пока ничего делать не стал, надо сначала выяснить, будет ли работать в 2007.


exceleved, Спасибо еще раз, что помогаете!
Но у меня еще один вопрос, надеюсь что последний  :)
Хотела сама разобраться, но не получается. Есть ли в вашем коде указание диаграммы с которой берется уравнение (я предполагала что это единица в скобках ChartObjects(1)). Я хотела адаптировать программку (меняя имена диаграмм), в случае если есть несколько диаграмм на нескольких листах в книге.
Просто не совсем понятно, имена диаграмм имеют вид: [Perenos2-3.xls]Лист1 Chart4, а у вас такой ссылки на диаграмму нет.

exceleved

Можете указывать имя диаграммы: ChartObjects("Chart 4")
Какой версии у Вас Excel? Я попробовал - в 2007 верхние индексы не работают. Можно, конечно, сделать, но не хочется делать лишнюю работу.