
No.4ベストアンサー
- 回答日時:
私なりにまとめてみました。
参考になりますでしょうか。反例などありましたら、指摘してください。
ここでは項目データが、列ごとに記録されているシートを考えます。
A列に体重、B列に身長、C列に年令などの例です。
(1)エクセルの散布図は2次元の図です。縦横の座標データが必要です。
また3つ以上あっても、2次元散布図では書けません。
シートに沢山(3列以上)の系列がある場合は、3系列以上指定するまたは指定しないと、それぞれが折れ線グラフで線なしの点グラフになってしまいます。
(2)2列の同行データでy軸、x軸で測って、交差する位置に点が描かれます。
(3)文字列の列があっても、2列しか数値データがない場合は、最初に出てくる数値列と次に出てくる数値列の2つが取り上げられます。
指定しないと、上例では体重と身長の散布図となります。
A列に近いほうから、最初にあるデータ列がX軸になり、次にあるデータ列がY軸になります。グラフウイザードの2/4でデータ範囲を、逆転させて
指定しても、逆になりません。列を入れかえるより他ないようです。
しかし隣り合わない、2つの列を指定したい(例えば体重と年令)場合は、体重列と年令列を(CTRLキーを押して)範囲指定して、グラフを描かせれば良い。
(4)そのほかに、Y軸の目盛の範囲を決めたいときは、一旦グラフを作成しY軸をクリックして、右クリックして、「軸の書式設定」を選び、「目盛」タブを選び、Y/数値軸目盛の最小値・最大値を指定します。身長であれば最小140、最大190とか指定します。X軸との交差点も指定します。
(5)あとX軸の目盛の範囲を決めたいときは、一旦グラフを作成しX軸をクリックして、右クリックして、「軸の書式設定」を選び、「目盛」タブを
選び、X/数値軸目盛の最小値・最大値を指定します。体重であれば最小50、最大90とか指定します。
(6)以上で目盛り線、凡例、タイトル、マーカー、データラベルなどを除いた、数値的な仕様が決まります。
--------
さて本題の、VBAでは
(A)散布図は
Charts.Add
ActiveChart.ChartType = xlXYScatter
(B)系列はActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A1:D7"), PlotBy:= _
xlColumns
この例ではA、C列は文字列の例でした。
列方向にデータ系列を考えるときはPlotBy:=xlColumnsです。
(C)グラフにするデータの列(と範囲)の指定は
C,D列に数値データがあるときの例では
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("C1:D7")
離れた範囲の場合は
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("C1:C7,E1:E7"),
(D)X軸の最高値と最低値、Y軸の最高値と最低値、交差する点を
定義するのは下記で行う。
ActiveChart.Axes(xlCategory).Select
With ActiveChart.Axes(xlCategory)
.MinimumScale = 50
.MaximumScale = 100
.CrossesAt = 50
End With
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
.MinimumScale = 20
.MaximumScale = 100
.CrossesAt = 20
End With
No.2
- 回答日時:
#1です。
補足です。xv = "='Sheet1'!R1C1:R10C1"
これで"xv"にはシート名「Sheet1」のA1~A10セル範囲を指定したことになります。
No.1
- 回答日時:
事前に"xv""yv"には指定した行列の範囲をいれておきます。
("i"はグラフ内の変更したい系列番号)ActiveChart.SeriesCollection(i).XValues = xv
ActiveChart.SeriesCollection(i).Values = yv
これでできました。
Formulaで一括変更も可能ですが、その後系列番号が変わってしまいますので、こちらは割愛します。
漠然としていますか?詳細が必要なら後ほどレスいたしますが・・・?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- その他(Microsoft Office) 2019エクセル折れ線グラフで、Y軸を3つ作成したいのですがやり方が分かりません。 例 A 1.2. 1 2022/04/27 12:25
- Excel(エクセル) Excel 散布図グラフ 外れ値 セル番地参照方法 4 2022/04/19 18:56
- Excel(エクセル) 図のような散布図の作り方を教えてください。 1 2022/07/19 11:52
- Excel(エクセル) Excelグラフについて 1 2023/05/12 16:26
- Excel(エクセル) エクセルの折れ線グラフで教えて下さい 1 2023/03/05 22:48
- 企画・マーケティング 表やグラフ作成、数値管理ツールを探しています。 1 2023/05/30 13:33
- Excel(エクセル) エクセルのグラフで式や文字列を無視したい 2 2022/12/14 10:47
- Excel(エクセル) Excelでグラフを作りたいです。散布図でしょうか? 3 2023/02/09 12:48
- Excel(エクセル) <スプレッドシート>採用進捗 グラフ作成について 3 2022/10/23 15:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
Worksheets メソッドは失敗しま...
-
VBA 何かしら文字が入っていたら
-
VBAのFind関数で結合セルを検索...
-
Cellsのかっこの中はどっちが行...
-
URLのリンク切れをマクロを使っ...
-
DataGridViewに空白がある場合...
-
vba 2つの条件が一致したら...
-
【VBA】複数行あるカンマ区切り...
-
エラーコード1004
-
実力がなくマクロがわかりません。
-
Excel(VBA) 特定の条件に該当...
-
VBAを使って検索したセルをコピ...
-
難問 VBA 今日の日付より前に対...
-
IIF関数の使い方
-
VBA 列が空白なら別のマクロへ...
-
VBAで10行おきにセルの下に罫線...
-
VBAにてセルの値を移動させる方...
-
C#で複数列をもつデータソース...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
vba 2つの条件が一致したら...
-
Worksheets メソッドは失敗しま...
-
B列の最終行までA列をオート...
-
Cellsのかっこの中はどっちが行...
-
IIF関数の使い方
-
Changeイベントでの複数セルの...
-
【VBA】2つのシートの値を比較...
-
VBA 何かしら文字が入っていたら
-
URLのリンク切れをマクロを使っ...
-
VBAのFind関数で結合セルを検索...
-
DataGridViewに空白がある場合...
-
VBAを使って検索したセルをコピ...
-
文字列の結合を空白行まで実行
-
データグリッドビューの一番最...
-
VBAでのリスト不一致抽出について
-
エクセル 2つの表の並べ替え
-
rowsとcolsの意味
-
【Excel VBA】 B列に特定の文字...
-
VBA 列が空白なら別のマクロへ...
おすすめ情報