• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBSでExcelのグラフを作成)

VBSでExcelのグラフ作成方法について

akina_lineの回答

  • akina_line
  • ベストアンサー率34% (1124/3287)
回答No.1

こんにちは。  VBAのヘルプで「ChartObjects コレクション オブジェクト」のページをご参照ください。  下記の説明が参考になるかもしれません。 ChartObjects コレクションには、1 つのシートにあるすべての埋め込みグラフが含まれています。空の埋め込みグラフを新しく作成して、コレクションに追加するには、Add メソッドを使います。新しい埋め込みグラフにデータをプロットし、書式を設定するには、ChartWizard メソッドを使います。次の使用例は、埋め込みグラフを新しく作成し、セル範囲 A1:A20 のデータを折れ線グラフとして追加します。 Dim ch As ChartObject Set ch = Worksheets("sheet1").ChartObjects.Add(100, 30, 400, 250) ch.Chart.ChartWizard source:=Worksheets("sheet1").Range("a1:a20"), _ gallery:=xlLine, title:="New Chart"  なお、私が確認してのはExcel2003です。 では。

onosendai
質問者

お礼

回答ありがとうございました。

関連するQ&A

  • VBAでのグラフ作成について質問です。

    VBAでのグラフ作成について質問です。 Sheet1のA2:A10にx軸の値、Sheet1のD2:D10にy軸の値を設定した折れ線付き散布図を作成したいと思い、以下のようなマクロを組みました。 Sub Test() Dim chart1 As Chart Set chart1 = Charts.Add chart1.SetSourceData Worksheets("Sheet1").Range("A2:A10, D2:D10") chart1.ChartType = xlXYScatterLines End Sub 実行してみると、x軸に設定したセルがy軸の値になってしまい、 xの値が空欄の2つの折れ線グラフが現れてしまいます。 A2:A10をx軸の値に、D2:D10をy軸の値にしてグラフを作成するには上記のマクロをどのように変更すればよいのでしょうか?

  • Excelマクロによるグラフ作成時の元データの取得について

     Excelマクロでグラフを作成したいのですが、以下(1)のように書いたら、Grp1.Chart.SetSourceData・・・のところでエラーになってしまいました。そこで、Rangeのところを(2)の様に変更したら、うまくいきました。ただ、自分としては、(1)のようにRangeの中にCellsを使う書き方でやりたいのですが、そのようにはできないでしょうか。  なお、マクロ初心者なので、簡単な表現でお願いします。 (1) Sub グラフ挿入_Macro() Set Grp1 = Sheets("グラフ1").ChartObjects.Add(10, 10, 500, 200) Grp1.Chart.SetSourceData _ Source:=Sheets("データ").Range(Cells(3, 1), Cells(10, 2)), _ PlotBy:=xlColumns End Sub (2) Sub グラフ挿入_Macro() Set Grp1 = Sheets("グラフ1").ChartObjects.Add(10, 10, 500, 200) Grp1.Chart.SetSourceData _ Source:=Sheets("データ").Range("A3:B10"), _ PlotBy:=xlColumns End Sub

  • VBAでのグラフ作成時の色づけ方法

    VBAを使用して散布図を作成しているのですが、 その散布図のマーカーの色をすべて同じ色にするプログラムを考えています。 以下のプログラムを実行してみたのですが色が変更されないため、 どなたか教えていただけると嬉しいです。 よろしくお願いします。 Sub グラフ作成と色づけ() Dim i As Integer With Sheet1.ChartObjects.Add(100, 50, 300, 200).Chart .ChartType = xlXYScatter .SetSourceData Source:=Sheets("sheet1").Range("C2:DD4465") .HasTitle = True .ChartTitle.Characters.Text = "気温変化" .HasLegend = False .HasDataTable = False For i = 1 To 105 .SeriesCollection(i).Interior.ColorIndex = 3 Next i End With MsgBox ("FINISH") End Sub

  • エクセルのグラフで

    エクセルのグラフ(散布図による折れ線グラフ)で系列(各線)の名前に下付き文字を使うことはできるのでしょうか?できるならどうすればいいのでしょうか? エクセル2000です。

  • Excel VBAでグラフを作成したい

    今、下記の ように参考書のコードを書き写し実行しましたが、実行時エラーが出ます。 Sub グラフ作成()   With Worksheets("sheet1").ChartObjects     .Add(230, 10, 250, 180).Chart      .SetSourceData Range("A3").CurrentRegion     .ChartType = xlColumnClustered   End With End Sub    実行時エラー '438' オブジェクトはこのプロパティまたはメソットをサポートしていません。  と出ます、何が間違いなのかわかりません、私の間違っているところを教えた頂けませんか。お願いします。   

  • エクセルグラフの縦軸

    エクセルのグラフについて質問させていただきます。 グラフ作成すると(折れ線、散布図等)決まって縦軸が、ある数値および縦軸名となってしまいます。そのような数値と名前はエクセルシート上にはないのですが、新規作成しても同様の縦軸となってしまうのです。 エクセルバージョンは2000です。

  • 自動でグラフを作成するソフトを探しています

    CSVのデータを取り込み、折れ線グラフを自動で作成し、画像で出力してくれるフリーソフトを探しています。 CSVファイルが多く(約500)、また毎日データが追加される為、Excelのグラフ機能で1つ1つ作成する方法は手間がかかり過ぎてできません。 Vectorで探してみましたが、散布図や3Dのソフトはあるものの、単純にCSVを折れ線グラフにするソフトが見つかりませんでした。 Rも触ってみたのですが、プログラミングの知識がなく、エラーばかりで作成まで漕ぎ着けられませんでした。 求める機能は以下の通りです。 ・CSVデータを取り込んでグラフ化できる ・グラフを画像で出力できる ・(可能であれば)複数のCSVファイルを一括で処理できる オススメのソフトがありましたら、ぜひご教示下さい。

  • excelでグラフを作成しているのですが、どのように作成したよいかがわ

    excelでグラフを作成しているのですが、どのように作成したよいかがわかりません。 グラフはX軸にある数値、Y軸にもある数値、この組み合わせで6名の項目軸があります。 さらに6名についてを1、2、4週と変化がわかるようなグラフを作りたいです。 散布図か折れ線グラフ化とは思いますが、どのようにおこなえばよいかがわかりません。 よろしくお願いします。

  • Excel VBAでグラフ作成。A,C列をx値, B,D列をy値にした複数プロット

    ExcelのVBAでグラフをChartType = xlXYScatterLinesでグラフを作っています。仮に各列10行でAからF列までデータがあるとします。 Set chartObj = ActiveSheet.ChartObjects.Add(170, 170, 280, 170) With chartObj.Chart .ChartType = xlXYScatterLines .SetSourceData Worksheets(1).Range("A1:F10"), _ PlotBy:=xlColumns .HasLegend = False End With 上記のようにしてしまうと、x値がA1:A10で、y値がB1:B10,C1:C10・・・・のプロットが5本作成されてしまいます。 以下のようにするにはどうすればよろしいでしょうか。 第一のプロットはx値をA1:A10, y値をB1:B10としてグラフを作成します。次にこのグラフにx値をC1:C10, y値をD1:D10とした第二のプロットを追加、同様に第三はx値をE1:E10, y値をF1:F10としてプロットを追加したグラフを作成したいのですが、このようなグラフはVBAで作成可能でしょうか。 本番のグラフは行数と列数はいろいろな場合があるので、行数と列数のパラメータに任意の値を代入し、Forループで様々な形態に対応できるものを作りたいと考えています。

  • VBAで散布図を作成したのですが・・・

    VBAで散布図を作成したいのですがうまくいかないで困っています。 この散布図はA行とB行をそれぞれ軸として指定しているのですがうまくX軸、Y軸に指定されず2本のグラフが表示されてしまいます。 また範囲指定をC1を変数としてA1からB○まで取りたいのですが最初の範囲指定はうまくいったのですが最後の行の指定がうまくいかずエラーになってしまいます。 (○は"C1の値+4"にしたいのです。) よろしければ何かヒントでもいいので教えていただけないでしょうか?よろしくお願いします。 (私が書いたVBA↓) Sub chart1() Dim sh1 As Worksheet Set sh1 = Worksheets("Sheet1") Dim i As Integer i = Range("C1").Value + 4 Range(Cells(1, 1), Cells(i, 2)).Select Charts.Add ActiveChart.ChartType = xlXYScatterSmooth ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range(Cells(1, 1), Cells(i, 2))