FXの予測トレーニングを作成中。ExcelのVBでグラフを自動描画する方法を知りたい

このQ&Aのポイント
  • FXの動きを予測するトレーニングのためにExcelのプログラムを作成中です。データをインポートして、ボタンを押すごとにひとつずつローソクを描画するプログラムを考えています。MT4でデータエクスポートでexcelファイルを作成します。I~N列、1~100行(最初はデータなし)を選択してローソク足のグラフを描くようにしておきます。ボタンを押すごとにB~G列の1行のデータをI~Nに転記することでグラフを書かせます。Calculateの前にグラフ範囲を指定する命令が必要かと思いますが、詳しい方に教えていただきたいです。
  • FXの予測トレーニングにおいて、ExcelのVBを使用して自動的にグラフを描画するプログラムを作成していますが、データの範囲指定についての質問です。現在、I~N列の1~100行を選択してローソク足のグラフを描画していますが、100行を超えた場合には自動的にグラフ範囲を変更したいです。具体的には、101行からは2行目以降のデータを転記し、グラフを描画したいです。その際、どのような命令を使用すると良いでしょうか?詳しい方からのアドバイスをお待ちしています。
  • FXの予測トレーニング用のExcelプログラムについての質問です。現在、データインポートおよびローソク足の自動描画を行うプログラムを作成しています。100行までのデータを選択し、ボタンを押すと1行ずつデータを転記してグラフを描画するようにしています。しかし、100行を超えた場合にはグラフ範囲を自動的に変更したいと思っています。これを実現するためにはどのような命令を使用すれば良いでしょうか?詳しい方にアドバイスをお願いします。
回答を見る
  • ベストアンサー

FXの予測トレーニングを作成中。excelのVBでグラフを自動描画。範

FXの予測トレーニングを作成中。excelのVBでグラフを自動描画。範囲を指定する方法がわからない。 FXの動きを予測するトレーニングのためにExcelのプログラムを作成中です。 データをインポートして、ボタンを押すごとにひとつずつローソクを描画するプログラムを考えています。 MT4でデータエクスポートでexcelファイルを作成します。 I~N列、1~100行(最初はデータなし)を選択してローソク足のグラフを描くようにしておきます。 (この時は、グラフの枠のみが表示) ボタンを押すごとにB~G列の1行のデータをI~Nに転記することでグラフを書かせます。 Cells(3, 16)はグラフ開始行の指定。(通常は1を入力しておく。) <ボタンを押したときのサブルーチン> Dim AM As Single AM = Cells(3, 16) Cells(AM, "i") = Cells(AM, "b") Cells(AM, "j") = Cells(AM, "c") Cells(AM, "k") = Cells(AM, "d") Cells(AM, "l") = Cells(AM, "e") Cells(AM, "m") = Cells(AM, "f") Cells(AM, "n") = Cells(AM, "g") Cells(3, 16) = AM + 1 Calculate End Sub これだと、最初に1~100行を指定しているので、100行を超えるとデータは転記されるが、グラフは変わりません。 100行を超えたら、1~101、2~102と変えていくためには、 Calculateの前にグラフ範囲を指定する命令が必要かと思いますが、誰か教えてください。

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

  • ベストアンサー
回答No.1

Excel掲示板のほうが適切な回答が得られると思いますが一応。for XL2003 グラフの元データ-系列 において 項目軸ラベルおよび値を4種類すべて範囲を変更してはどうでしょうか? 上記をマクロの記録で記録すれば、ヒントも見えると思います。 # MT4は使ったことないけど、そのようなグラフ作成ツールはないのでしょうか?

oceancruise22
質問者

お礼

ご回答ありがとうございます。 ”Excel掲示板”確認しました。今までわかったことを除いて改めてそちらで質問してみます。

関連するQ&A

  • エクセルでのグラフ描画について

    エクセルでのグラフ描画について質問します。 以下のようなデータから、折れ線グラフを作成します。 -------------------------------------     A   B   C 1月  3.0  4.0   3.0 2月  4.0  4.0   5.0 3月  4.0  4.0   --- 4月  5.0  4.0   4.0 5月  4.0  4.0   6.0 ------------------------------------- このとき、Cの3月は「データ無し」なので、ここは飛ばして 2月から4月に線を引きたいのです。 可能でしょうか?どのようにすればよいのでしょうか?

  • Excel 折れ線グラフのデータ描画時間を改善したい

    Excel 折れ線グラフのデータ描画時間を改善したい Excel 2003を使用しています。 15000行20列ほどのデータを折れ線グラフとして表示していますが 系列が20と、データ数が膨大なためグラフの描画時間がかかってしまいます。 グラフデータを図面化するなどといった方法で、 なんとか描画時間を少なくしてExcelオープン時の負担を軽くしたいのです。 よい方法をご存知の方は教えてください。 よろしくお願いします。

  • Excelのグラフに重ねて描画した図形が表示されない

    Excelでグラフを作成し、その上に重ねる形で図形を描画しました。 (グラフを選択したのち、図形描画ツールバーの「オートシェイプ」ボタンを使って作成しました) すると、グラフの選択を解除すると、描いたはずの図形が消えてしまいます。でも、グラフを選択すると、表示されます。印刷プレビューでも表示されますし、実際に印刷もされます。 グラフを選択していなくても図形が表示されたままにしたいのですが、どうすればよいかご存知の方、ご教授下さい。

  • エクセルでグラフを自動作成マクロの改良

    いつもお世話になっております。 過去にここで指定した列の下から指定の個数のデータを自動で作成するマクロを教えていただき本当に便利に多くのファイルで使用しているのですが、これが定着してきたら次の欲が出てきました。 各列の決まったセルに数字を入れて(D列をグラフにしたいときにはD2に50と入れて)マクロボタンを押すと指定のシート(成績表)に飛んでその列のグラフが指定のデータ数(50個)でグラフになればありがたいのですが。。。。 項目名は5行目になっているのですが、この場合はグラフ化する項目は必要時に指定するので項目名の表示は無くてもOKです。(あれば更にOK) '//------------------------'データ列1列 Sub GraphSauceChange8_1() Sheets("成績表").Select ActiveSheet.Unprotect Const MaxRows = 50     'データ範囲に指定する最大行数 Const ColNum1 = 6     '1つ目データ格納列 Const SRowNum = 17     'データ開始行番号 Const KoumokuRow = 5    '項目名格納行番号 Const ShNameGD = "入力表" 'データ格納シート名 Const ShNameGr = "成績表" 'グラフ描写シート名 Const XCol = 3 '横(項目)軸ラベル列番号(下2行と一緒に削除可) Dim GSh As Worksheet Dim DSh As Worksheet Dim SRow As Long 'グラフ用データ開始行 Dim ERow As Long 'グラフ用データ終了行 Dim tgRange1 As Range 'データ群1つ目範囲 Set GSh = ThisWorkbook.Sheets(ShNameGr) Set DSh = ThisWorkbook.Sheets(ShNameGD) ERow = DSh.Cells(DSh.Rows.Count, 1).End(xlUp).Row If ERow < MaxRows + SRowNum Then SRow = SRowNum Else SRow = ERow - MaxRows + 1 End If Set tgRange1 = _ Range(DSh.Cells(SRow, ColNum1), DSh.Cells(ERow, ColNum1)) GSh.ChartObjects(1).Chart.SetSourceData Source:=tgRange1 'セット GSh.ChartObjects(1).Chart.SeriesCollection(1).Name = _ DSh.Cells(KoumokuRow, ColNum1).Value GSh.ChartObjects(1).Chart.FullSeriesCollection(1).XValues = _ Range(DSh.Cells(SRow, XCol), DSh.Cells(ERow, XCol)) '(削除可) End Sub

  • EXCEL でのグラフ作成について

    株価のグラフ化をしたいと思っています。詳細は以下の通りです。 1,ローソク足 2,出来高 3,移動平均線 3,4,ボリンジャーバンド 5,一目均衡表 を一つのグラフシートの中に表示させたいと考えています。 1+2の項目までは、問題なく作成できるのですが、移動平均線を散布図より作成を試みるとローソク足も出来高も表示されなくなってしまいます。 実際問題、EXCELでこの項目を一つにまとめたグラフを作成する事はできるのでしょうか?

  • エクセル グラフ作成!!

    エクセルのグラフ作成に関してしてご相談です。 現状グラフを作成する際、元データを1行中に作成しないとグラフ 作成が出来ませんが、2行以上の元データに関してのグラフ作成の やり方を教えて下さい。 例:カレンダーの数値をグラフ化する 下記はヤフーのブリーフケースにこんな場合は如何でしょうか? といったエクセルのファイルを載せました。 http://briefcase.yahoo.co.jp/bc/koffee220/vwp2?.tok=bcUNN8HBUZk.2vCI&.dir=/80df&.dnm=%a5%a8%a5%af%a5%bb%a5%eb%a1%a1%a5%b0%a5%e9%a5%d5%ba%ee%c0%ae.xls&.src=bc

  • エクセルでセルの値でグラフの横棒を自動作成

    いつもお世話になっております。 つい先日、ここで指定した列の最下行から指定したデータ数で自動でグラフを作成する下記のコードを教えていただきました。 それを色んなBookに展開していて、ず~と前からあきらめていた動作があります。 これまで手作業していたのですが上記ができるようになったので欲は限りなく・・・ これから多くのBookに展開する前にできればこの機能も盛り込みたく。 どんどん贅沢になっていますがよろしくお願します。 やりたいことは、下記でマクロで作成されるグラフに当該列の11行目と12行目の値で横棒を引きたいのです。 11行目と12行目には当該列の±3σの値が表示されており、これをグラフ上に横棒で表示すると、最新のデータの位置が分かります。 因みに、最大、最小、3σ、規格外れは書式設定でアラームが出るように設定してあり、これらのアラームが出たときにグラフにして全体の傾向とその値の異常の程度を確認するのが当方の仕事です。(データ入力は各担当者) 質問内容が非常に分かりにくくなってしまいましたが何卒よろしくお願いします。 Sub グラフ確認() Const SRowNum = 17 'データ開始行番号 Const KoumokuRow = 5 '項目名格納行番号 Const ShNameGD = "入力表" 'データ格納シート名 Const ShNameGr = "グラフ" 'グラフ描写シート名 Const XCol = 3 '横(項目)軸ラベル列番号(下2行と一緒に削除可) Dim GSh As Worksheet Dim DSh As Worksheet Dim SRow As Long 'グラフ用データ開始行 Dim ERow As Long 'グラフ用データ終了行 Dim tgRange1 As Range 'データ群1つ目範囲 Dim MaxRows As Long 'データ範囲に指定する最大行数 Dim ColNum1 As Long '1つ目データ格納列 Set GSh = ThisWorkbook.Sheets(ShNameGr) Set DSh = ThisWorkbook.Sheets(ShNameGD) GSh.Select GSh.Unprotect MaxRows = DSh.Cells(2, Columns.Count).End(xlToLeft).Value ColNum1 = DSh.Cells(2, Columns.Count).End(xlToLeft).Column ERow = DSh.Cells(DSh.Rows.Count, 1).End(xlUp).Row If ERow < MaxRows + SRowNum Then SRow = SRowNum Else SRow = ERow - MaxRows + 1 End If Set tgRange1 = _ Range(DSh.Cells(SRow, ColNum1), DSh.Cells(ERow, ColNum1)) GSh.ChartObjects(1).Chart.SetSourceData Source:=tgRange1 'セット GSh.ChartObjects(1).Chart.SeriesCollection(1).Name = _ DSh.Cells(KoumokuRow, ColNum1).Value End Sub

  • Excel グラフの自動作成

    Excelでユーザーフォーム画面でX軸とY軸などを選択することで自動で目的のグラフを作成できるマクロの組み方を教えて下さい! ・Y軸の系列は複数あり、間隔が均等なのではじめのY軸系列と系列同士の間隔数を指定すると自動で複数の系列が選択されたグラフが作成される ・Y軸の系列数は別途フォームで指定する (例)X軸にA列、Y軸の第一列にC列を選択し、系列数を4つ、系列間隔を3列と指定すると、C列,G列,K列,O列がY軸に選択されたグラフができる フォームに在るのは、 ・X軸選択 ・Y軸選択(第一系列のみ) ・Y軸系列数 ・系列(空列)間隔 ・作成ボタン ・キャンセルボタン です。 また、選択範囲が1行目から始まらない(例えばX軸はA4から、Y軸はC4,G4,K4,O4から選択される)ということもできるのでしょうか? 以上煩雑ですみませんが、ご教授お待ちしております!

  • エクセルのグラフ作成

    いつもお世話になっております。 エクセル2007でグラフの作成方法について質問させていただきます。 画像に添付したように、行に年度、列に月としたデータがあります。 折れ線グラフ化すると、縦軸に%、横軸に月となり、それぞれの年度ごとに折れ線グラフが作成されます。 私は2006年1月から2007年7月までを一本の折れ線として作成したいのですが、可能でしょうか? 稚拙な文章で申し訳ありませんが、よろしくお願い致します。

  • Excelでグラフを作成し、2年後の予測を立てたい

    過去データが5年分(データ個数にして5個)しかないのですが、Excelでデータの表を作りました。 そこからグラフを作成しパワーポイントに貼り付けたのですが、 さらにそのグラフから1年後と2年後の予測を立てたいと思っています。 以前勉強した時に近似値?とかをグラフから算出してグラフにそのまま反映できる方法があったことを記憶しているのですが どうやっていいか…ネットやテキストで調べてもマッチするのが見つからず…でも締め切りも近くて困っています。 ご教授願えますでしょうか。 よろしくお願いします。