• ベストアンサー

グラフの自動化

VBA初心者です。 以下の事をVBAマクロで組みたいのですがアドバイス頂けませんでしょうか? <やりたい事> エクセルでA列に月日時分がありB列以降に200行くらいのデータテーブルがあるのですが、 チェックボックス等でグラフ表示したい行を選択して、その行だけを散布図としてグラフ化したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • hotosys
  • ベストアンサー率67% (97/143)
回答No.2

No.1です。 こんなのでしょうか? Private Sub CommandButton1_Click() ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).Values = Range("B" & Selection.Row).Resize(Selection.Rows.Count, 1) ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).XValues = Range("A" & Selection.Row).Resize(Selection.Rows.Count, 1) End Sub

mm02847
質問者

お礼

ありがとうございます。 これを参考にしてtryしようと思います。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

回答者に、コードを書いてくださいと丸投げの質問。 >散布図 2列のデータの対を点として捉えるものと思うが列の選択はどうなるのか。 範囲を指定するのはチェックボックスは不向きと思うが、どう考えているか。初心者だろうが、グラフを描いて、マクロの記録を取りましたか。そこでどこを任意に変えれはよいのか、コード上で考えましたか。 質問する前に、初心者ならそれで、まずやることをやって無いのでは。 初心者では、コントロール(チェックボックスなど)と関連付けるのなど次のステップ。InputBoxででもとりあえず行(列)指定する方式にして、うまく行ってから改良するもんだ。

mm02847
質問者

お礼

ご助言ありがとうございます。 ただ、仕事上で至急対応する必要があって、精通している方にアドバイスもらいたかっただけです。

全文を見る
すると、全ての回答が全文表示されます。
  • hotosys
  • ベストアンサー率67% (97/143)
回答No.1

こんなのはどうでしょうか? 既にグラフがあるとして、A列が選択されたらその行をデータ系列の値として設定します。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Column = 1 Then ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).Values = Range("B" & Target.Row).Resize(1, 10)’10は横数なので適当に変更してください End If End Sub

mm02847
質問者

お礼

ありがとうございます。 質問の仕方間違えてました。選択した任意の行でなく列が正しいです。 例えばC/D/E列を選択して、”グラフ作成”  というコマンドボタンを押すと X軸が月日時分で、C/d/E列が系列として 散布図のような感じです。 質問の言い方間違えてすみませんでした。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excelマクロ:配列データからグラフを作成するには?

    マクロ初心者です。 Excel VBAのマクロで、2つの配列データから、散布図グラフを作成したいのですが、セルに配列データを書き込まず、直接グラフ化するにはどうしたらよいでしょうか? 配列データの要素数がexcelの行と列の最大数(65536,256)?を超えてしまっているので、配列データから直接グラフ化したいと思っています。 よろしくお願いいたします。

  • EXCELマクロで順番にグラフをつくるには?

    エクセルマクロ・VBA初心者です。 現在、グラフ作成で困ってます。 お詳しい方、よければアドバイスを下さい! 作成したいグラフは、元データが5000行×50列で、 1番左列に時刻、2列目からデータとなっており、 1-2列、1-3列、1-4列、・・・・1-50列 という感じの一般的な時系列グラフを多量につくりたいのです。 これをマクロを使って、別シートにグラフ(散布図)を並べて作るというものです。 さらに、別に用意したグラフの名称を並べたセルから、 順に、上記グラフのタイトルとして入力していきたいのです。 これをVBAを使って行いたいのですが、 一体どうすればいいのでしょうか? 「マクロの記録」では、 ■「50列目まで順番にグラフをつくれ!」 ■「名前を順番に入れていけ!」 という命令が私には作れません。 お詳しい方、ご返答宜しくお願い致します。

  • エクセルでグラフの作り方 軌跡を示すようなグラフにしたいのですが

    エクセルでグラフの作り方 軌跡を示すようなグラフにしたいのですが・・・ x・y座標ともデータはあります 子どもが歩いている様子を画像でとらえて手先の部分だけ座標を読み込んだのですが (実長のデータにしてあります) 手先の部分の移動範囲(移動の仕方グラフ(散布図?)で表したいのです。どのようにしたらよいのでしょうか? (当方、マクロ、VBAはわからないのですが) よろしくお願いいたします。

  • エクセルのグラフ化で困っています。

    エクセルのグラフ化で困っています。 エクセルのグラフを使って四つのカテゴリーに分類されるような グラフにしたくて散布図を使っていますが、思ったような結果が 得られません。 項目としてAからJまでがあります。 その各々に「速さ」と「質」とを評価として、数値を入力し 結果を得たいのです。 添付した図では、項目Aに対して、速さ=ー1、質=2で 二つの点がグラフ上に表示されてしまいます。 本来表示したいのは、項目Aに対して、速さがー1で、かつ、 質が2であるという一つの点を表示したいのです。 このようなグラフ化はどうしたらできるのでしょうか。 何か関数とかマクロとかが必要になるのでしょうか。 関数はマニュアル解説本を見ながらであれば、何とか なりますが、VBAとなるとわかりません。 簡単に表示する方法があったら知りたいです。 なお、過去ログを読みましたが、散布図の項目では 該当するような記述を見つけられず、それ以外では 探そうにもキーワードの入力のところから、つまずいて 探すこともままなりません。 何か方法があれば教えていただけると嬉しいです。

  • エクセルのグラフの線の太さを変えたい

    エクセルの折れ線グラフや散布図の線の太さを変えたいのですが 選択できる一番細いのだと細すぎるし ひとつ太くすると太すぎだし マクロあたりで太さを数字で決められないでしょうか

  • エクセルのグラフで

    以下の様なデータでエクセルの散布図を作成しています。 A列;氏名 B列;年齢 C列;身長 B列とC列のデータを使用して作成した散布図で、 グラフ上、A列の氏名を表示する(この点は誰か分かるようにする) ことは可能でしょうか?

  • プロットグラフとは

    プロットグラフとは何でしょう?散布図のようなのですが エクセルの散布図では どれを使えばいいのでしょう?よろしくお願いします。

  • excelで散布図に線を追加したい

    EXCELで散布図でグラフを描いていますが、ある範囲内を良データとしたく、散布図内に四角径(塗潰し無し)を描きたいのですがどなたかわかる方いらっしゃいませんか?線のマクロはネット上に落ちていましたが、そこから四角へ展開できません。VBAは基本しか知らないです。

  • エクセルで、相関関係図のグラフ

    A列に名前、B列に国語の点数、C列に英語の点数があるとします。 1行目は各列のタイトルだとして、B2~C11までを選択しグラフで散布図をつくったのですが、これは相関関係図になりますか? グラフ上のそれぞれの点に、名前を表示させたいのですがうまくいきません。教えてください。

  • エクセルのグラフの横軸の数値

    こんにちは。エクセルのグラフの事で質問させて下さい(エクセルは2003です)。 散布図のグラフで、横軸の数値の範囲がゼロから始まります。0から100ではなく、50から100のような一部分のグラフを作りたいのですが、できますでしょうか?