Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


69657 / 76732 ←次へ | 前へ→

【11591】Re:グラフの元データ範囲の取得
お礼  Excel大好きちゃん  - 04/3/12(金) 9:25 -

引用なし
パスワード
   ichinose さん
おはようございますー(~_~)

早速のご教示、ありがとうございます。
今、頂いたコードを埋め込みグラフの存在するシートをアクティブにして実行してみたのですが、
Set rng = Union(rng, Range(r_add))
のところで、メソッド失敗というエラーが出て、止まってしまいました。
やり方が悪いのでしょうか?
どうもすみませんー


>▼Excel大好きちゃん さん:
>おはようございます。
>
>>皆さん、こんにちは。
>>グラフの元データ範囲の取得は、どうやったらできるのでしょうか。設定については、ActiveChart.SetSourceDataメソッドでできることはわかっていますが、逆の取得方法が不明で、調べてみても私の能力ではNGでした。是非、ご教示お願い致します。
>
>私は、普段チャートをあまり触らないので、探ってみましたが、元のデータのデータ範囲に相当するプロパティって、見つかりませんでした。
>で、SeriesCollectionを調べてセルアドレスをつなげて行く方法です。
>簡単なグラフ(データ範囲が同一シート内でないと失敗してしまいます)でしかテストしていませんが、確認してみて下さい。
>コードは、埋め込みグラフでの例です。
>
>'===========================================================
>Sub test()
>  Dim cht As Chart
>  Dim srs As Series
>  Dim rng As Range
>  Dim r_add As String
>  Set cht = ActiveSheet.ChartObjects(1).Chart
>  Set rng = Nothing
>  For Each srs In cht.SeriesCollection
>    r_add = edit_addr(srs.Formula, srs.PlotOrder)
>    If r_add <> "" Then
>      If rng Is Nothing Then
>       Set rng = Range(r_add)
>      Else
>       Set rng = Union(rng, Range(r_add))
>       End If
>      End If
>    Next
>  If Not rng Is Nothing Then
>    MsgBox rng.Address
>    End If
>End Sub
>'=================================================================
>Function edit_addr(add, podr As Long) As String
>  Dim ans()
>  wk = Split(Replace$(Replace$(add, "=SERIES(", ""), "," & podr & ")", ""), ",")
>  jdx = 1
>  For idx = LBound(wk) To UBound(wk)
>   If wk(idx) <> "" Then
>    ReDim Preserve ans(1 To jdx)
>    ans(jdx) = wk(idx)
>    jdx = jdx + 1
>    End If
>   Next
>  If jdx > 1 Then
>   edit_addr = Join(ans(), ",")
>  Else
>   edit_addr = ""
>   End If
>End Function
2 hits

【11584】グラフの元データ範囲の取得 Excel大好きちゃん 04/3/11(木) 18:51 質問
【11589】Re:グラフの元データ範囲の取得 ichinose 04/3/12(金) 8:40 発言
【11591】Re:グラフの元データ範囲の取得 Excel大好きちゃん 04/3/12(金) 9:25 お礼
【11594】Re:グラフの元データ範囲の取得 ichinose 04/3/12(金) 9:54 発言
【11597】Re:グラフの元データ範囲の取得 Excel大好きちゃん 04/3/12(金) 10:07 お礼
【11643】Re:グラフの元データ範囲の取得 ichinose 04/3/12(金) 22:40 発言
【11738】Re:グラフの元データ範囲の取得 Excel大好きちゃん 04/3/15(月) 17:23 お礼
【11644】Re:グラフの元データ範囲の取得 Kein 04/3/13(土) 0:01 回答
【11692】Re:グラフの元データ範囲の取得 ichinose 04/3/14(日) 21:41 発言
【11708】Re:グラフの元データ範囲の取得 Excel大好きちゃん 04/3/15(月) 9:46 発言
【11746】Re:グラフの元データ範囲の取得 ichinose 04/3/15(月) 18:36 発言
【11757】Re:グラフの元データ範囲の取得 ichinose 04/3/15(月) 21:57 発言
【11758】Re:グラフの元データ範囲の取得 更に訂正 ichinose 04/3/15(月) 22:22 発言
【12018】気づかなくて、お礼が遅くなりました。(^^♪ Excel大好きちゃん 04/3/22(月) 12:11 お礼
【11739】Re:グラフの元データ範囲の取得 Excel大好きちゃん 04/3/15(月) 17:26 お礼

69657 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free