【エクセルVBA】飛び飛びで選択したデータから散布図グラフを作成する方法!

こんにちは、ヒガシです。

 

このページでは、以下の動画のように飛び飛びで選択したデータから散布図グラフを自動作成するVBAプログラムをご紹介していきます。

 

それではさっそくやっていきましょう!

 

スポンサーリンク

飛び飛び選択したセルからグラフ作成するサンプルコード

いきなりですが、いかが冒頭にご紹介したような飛び飛びで選択したデータからグラフを作成するサンプルコードです。

Sub make_graph_select_data()
    Application.ScreenUpdating = Flase
    Dim value_string As String
    Dim x_string As String
    value_string = "={"
    x_string = "={"
    '選択したセルのアドレスを取得する
    select_address = Selection.Address
    '取得したアドレスを分割する
    address_array = Split(select_address, ",")
    '選択したセルに対して順番に処理
    For j = LBound(address_array) To UBound(address_array)
        value_string = value_string & Range(address_array(j)).Value & ","
        x_string = x_string & j & ","
    Next
    value_string = Left(value_string, Len(value_string) - 1) & "}"
    x_string = Left(x_string, Len(x_string) - 1) & "}"
    Cells(Rows.Count - 100, 1).Select
    ActiveSheet.Shapes.AddChart2(240, xlXYScatter).Select
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.FullSeriesCollection(1).Name = "=""select_data"""
    ActiveChart.FullSeriesCollection(1).XValues = x_string
    ActiveChart.FullSeriesCollection(1).Values = value_string
    ActiveChart.Parent.Cut
    Range("A1").Select
    ActiveSheet.Paste
End Sub

 

スポンサーリンク

マクロ実行時の注意点

基本的には上記のマクロはセルをひとつずつ選択する前提で書いています。

複数のセルを同時選択しているようなシーンではうまく動きませんのでご注意ください。

 

なお、サンプルを作成するとはいえ、今回はあくまでもY軸の数値を選択したものにしているにすぎず、X軸の値は0,1,2,3・・・という形で与えるようにしています。

 

上記を留意のうえご使用いただければと思います。

 

スポンサーリンク

おわりに

というわけで今回は飛び飛びで選択した複数のセルの数値から、散布図グラフを作成する方法をご紹介しました。

 

業務効率化等にぜひご活用ください。

 

このように、私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。

ぜひ他の記事ものぞいてみてください。

コメント

タイトルとURLをコピーしました