Page 476 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼グラフのx軸y軸データの順番について さんい 02/12/20(金) 22:10 ┗Re:グラフのx軸y軸データの順番について りん 02/12/23(月) 14:21 ┗Re:できました! さんい 02/12/24(火) 2:37 ─────────────────────────────────────── ■題名 : グラフのx軸y軸データの順番について ■名前 : さんい ■日付 : 02/12/20(金) 22:10 -------------------------------------------------------------------------
散布図のグラフを作成しようと思いますが、データソースエリアの設定において X軸とY軸のデータが逆になったりします。どうしたらよいでしょうか? Dim ChartN As ChartObject Dim R3 As Range Set ChartN = ActiveSheet.ChartObjects.Add(5, 55, 450, 200) With Sheets("A") Set R3 = Union(.Range(Cells(5, XGraphCh + 1), Cells(32000, XGraphCh + 1)), _ .Range(Cells(5, YGraphCh + 1), Cells(32000, YGraphCh + 1))) End With ChartN.Chart.ChartType = xlXYScatterLines つまり、XGraphCh、YGraphChはスピンボタンで設定できるようになっていて、 XGraphChの値がYGraphChより小さいときは大丈夫ですが、 逆だとX軸のデータとY軸のデータが反対になってしまいます。 勝手にUnion以下のコマンドにおいて先に描いた方が横軸(x軸)になって 後に書いたほうが縦軸(Y軸)になると思って記述すたのですが、 これがまちがいでしょうか? |
さんい さん、こんにちわ。 >勝手にUnion以下のコマンドにおいて先に描いた方が横軸(x軸)になって >後に書いたほうが縦軸(Y軸)になると思って記述すたのですが、 >これがまちがいでしょうか? 列単位指定の場合は範囲の一番左側にある列がX軸になります。 XとYを別々に指定します。 Sub Test() Application.ScreenUpdating = False Dim Co1 As ChartObject Dim R1 As Range, R2 As Range '動作確認用に変数に数値をあてがってます。 XGraphCh = 5: YGraphCh = 1 ' With Worksheets("A") Set R1 = .Range(.Cells(5, XGraphCh + 1), _ .Cells(32000, XGraphCh + 1)) Set R2 = .Range(.Cells(5, YGraphCh + 1), _ .Cells(32000, YGraphCh + 1)) End With Set co = ActiveSheet.ChartObjects.Add(5, 55, 450, 200) ' With co.Chart .ChartType = xlXYScatterLines .SeriesCollection.NewSeries With .SeriesCollection(1) .Values = R2 .XValues = R1 End With End With ' Set R1 = Nothing: Set R2 = Nothing Set co = Nothing Application.ScreenUpdating = True End Sub こんな感じです。 もし5行目がデータではなくタイトル行ならば、データ範囲を6行目からとし、 With .SeriesCollection(1) .Values = R2 .XValues = R1 .Name = Worksheets("A").Cells(5, YGraphCh + 1) '←これ追加 End With としてください。 |
りんさん、ありがとうございます。 なかなかレスポンスがつかなかったのであきらめていましたが、 ほんとうにありがとうございます。 りんさんの書かれた通りに入力して確かめましたら、 私の望みどおりのグラフができました。 感激です。 ご多忙中にもかかわらず教えてくださり ありがとうございました。 お礼を申し上げます。 |