続きざまに質問させていただきます。EXCEL2000でグラフを作成するマクロ構文
例)~.Chart.SetSouceData Range(*****),xlColumns
で、「*****」の中に入力するデータの範囲が"可変"であり、なおかつ複数の範囲(例えば A1:B5とD1:D5 のように)を指定することをしたいのですが、どのようにすれば、実現ができますでしょうか?
Range()の引数はカンマで区切って2コの引数しか使用できません。
ですので、考え方としては、表示したい複数の範囲が収まる一つの範囲として、グラフを作成、→ 表示をしたくないデータ系列を削除する??
でいいのかなぁ??と思ったんですけど私のVBAハンドブックでは全く歯が立たないです。。。どなたかよろしくお願い致します。
No.2ベストアンサー
- 回答日時:
うまく説明できるか分かりませんが、次のように事前にRangeのAddressを文字列で作って使用したりします。
Dim grpAdr As String '文字列を定義
↓
grpAdr = "D3:E10"
↓
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range(grpAdr)
範囲の結合の場合は、当然、文字列操作でAddressを作れますが、多数になると各RangeをUnionで結合してアドレスを取得したほうが楽でしょう。
Dim grpAdr1 As String '範囲1アドレス
Dim grpAdr2 As String '範囲2アドレス
Dim union_grpAdr As String '結合範囲アドレス
↓
grpAdr1 = "D3:E13"
grpAdr2 = "D15:E25"
union_grpAdr = Union(Range(grpAdr1), Range(grpAdr2)).Address
↓
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range(union_grpAdr)
※文字列の結合では union_grpAdr = grpAdr1 & "," & grpAdr2 でできます。
上では grpAdr1 = "D3:E13" のように範囲は固定ですが、
Cot = 13 '←何かの計算で13が出たと思って下さい
grpAdr1 = "D3:E" & Cot
と考えれば、文字列を作る時に可変領域の処理ができることになります。
回答ありがとうございます。大変助かります。本日試したところ、期待通りに実現できました。
> grpAdr1 = "D3:E" & Cot
というテクニックも知らず、プログラムコードが短縮できて、こちらとしては大変お得でした。本当にありがとうございます。
No.1
- 回答日時:
私がExcelをわかってるわけじゃないんで、回答ではないんですが、わからないことがあると利用しているサイトをご紹介しておきます。
ここのQ&A掲示板には、質問をなげるとスゴイ勢いで回答が返ってきますよ。
参考サイト:モーグ
参考URL:http://www.moug.net
あ~助かります~。VBA歴は全く無いので、分からない事だらけで調べるだけで時間がかかってかかって・・・。 ありがとうございます。利用させていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】Excelの特定範囲のセルを画像で保存したい 2 2023/01/25 13:06
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- Excel(エクセル) Excelグラフについて 1 2022/06/16 16:06
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Excel(エクセル) Excel VBA 空白行があるセル範囲に色を付ける 3 2022/06/13 15:58
- Excel(エクセル) エクセルVBA 複数行にまたがっている選択を判定するには 2 2023/05/21 21:54
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/09 14:54
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
- Visual Basic(VBA) 【VBA】もし、値が0だったら左のセルと合わせて削除したい 3 2023/04/20 10:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
三角関数 -3分のπって3分の5...
-
三角関数の範囲について、 0≦x≦...
-
(x2乗+9)って因数分解出来ます...
-
離れた列での最大値の求め方
-
「余年」の意味について教えて...
-
年代と年台・・・どちらが正し...
-
基礎問題精講、演習問題47(2)(i...
-
エクセルで(~以上,~以下)...
-
X3乗―2=0
-
シグマの範囲が2nまでの関数で...
-
X4乗=64の解き方を教えてほし...
-
お教えで来る範囲内で 文言が変...
-
判別式の使う時とか使わない時...
-
文字係数の2次不等式についてで...
-
数学IIBの三角関数と二次関数の...
-
なぜ(θ−4分のπ)をαに置き換え...
-
XとYの関係式 二次関数?
-
2次関数
-
数学の二次不等式で全くわから...
-
言葉、日本語について。 所要範...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで(~以上,~以下)...
-
年代と年台・・・どちらが正し...
-
三角関数の範囲について、 0≦x≦...
-
「余年」の意味について教えて...
-
(x2乗+9)って因数分解出来ます...
-
COUNTIF関数 ある範囲の数値で...
-
イプシロンエヌ論法についてで...
-
エクセルでPrint Area と表示さ...
-
基礎問題精講、演習問題47(2)(i...
-
離れた列での最大値の求め方
-
文字係数の2次不等式についてで...
-
三角関数 -3分のπって3分の5...
-
お教えで来る範囲内で 文言が変...
-
X3乗―2=0
-
絶対値のついた2つの不等式に...
-
記録の範囲、分布の範囲、数値...
-
判別式の使う時とか使わない時...
-
指定範囲内のオートシェイプを...
-
θが微小の時、sinθ=θ、cosθ=1と...
-
シグマの範囲が2nまでの関数で...
おすすめ情報