|
▼Kein さん:
ありがとうございます。
今、頂いたコードを実行してみました。
わたしのやり方がおかしいのか、途中でエラーで止まって
しまいました。変数の型があっていない、という メッセージです。
グラフをアクティブにしておいて
実行するんですよね?
お手を煩わしてばかりでごめんなさい。
どうも、ありがとうございました。 (^^♪
>系列から数式を取得し、カンマ区切りで分解するという方法は良いと思います。
>ただ、拝見したような複雑なコードが必要なのかは分かりません。
>もし既存のグラフに、コピー&ペーストでデータを繰り返し追加していたら、
>SERIES関数の数式がヘンな形になってしまうのは知ってますが、そのようなプロット
>範囲の拡大方法をしていないなら、最も単純な 4つの引数を持つ数式であるはず
>です。即ち
>
>=SERIES(系列名の文字列またはその参照, 項目軸範囲, 数値軸範囲, 系列のIndex)
>
>ですから単純に
>
>Dim SR As Series
>Dim SeriAry As Variant
>Dim x As Integer
>Dim ShN As String, PltAd As String
>
>Set SR = ActiveChart.SeriesCollection(1)
>SeriAry = Split(SR.Formula, ",")
>x = InStr(1, SeriAry(2), "!")
>ShN = Left$(SeriAry(2), x - 1)
>PltAd = Right$(SeriAry(2), Len(SeriAry) - x)
>
>と文字列を抜き出して
>
>Worksheets(ShN).Range(PltAd)
>
>をプロットしているデータ範囲、とすればよいと思います。
|
|