エクセルマクロで株価グラフを操作する方法

このQ&Aのポイント
  • エクセルで株価グラフを作成している際に、価格が大きく動くとグラフからはみ出してしまう問題があります。マクロを使用して、価格変動に合わせて縦軸の数値の範囲を自動的に変更する方法を教えてください。
  • また、マクロを使用して元データを切り替えることは可能でしょうか?
  • さらに、エクセルのグラフでは一つの数値軸しか設定できないため、金額と%の二つのグラフを重ねて表示する方法はありますか?
回答を見る
  • ベストアンサー

エクセルマクロ グラフの操作について

株価グラフをエクセルで書いています。 しかし、価格が大きく動くとグラフからはみ出してしまいます。 1.そこで、マクロで、価格変動に合わせて縦軸(価格)の数値の範囲(グラフの最大値は常に表示している値の最大値+500円、最小値は-500円としたいです)を変更出来ないでしょうか? 2.マクロで、元データそのものを変更(切り替え)することは出来ないでしょうか? 3.グラフの数値軸はひとつしか設定できないのでしょうか? たとえば、縦軸左側に金額、右側に%といった設定で、二つのグラフをひとつに重ね合わすのは無理でしょうか? 以上3点のマクロの構文が知りたくて質問しました。 設定は、シート”データ”のA列に日付、BCDE列に元データ、同GHIJ列に切り替えて表示したいデータ、シート”グラフ”にグラフを置いています。 私の所持する本を読んでも載っていないし、ネットでも探してみたのですが、コレといったものを見つけることができませんでした。 複数たずねて申し訳ないですが、関連する項目なので、あえてたずねてみることにしました。 うち、ひとつだけでも結構ですので、どなたか教えてください。 なお、エクセル2003、OS=XPです。

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

  • ベストアンサー
  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.1

全て可能です。 いずれもマクロの記録をしながらその作業を一通りしてみればどのような構文になるかが丸分かりです。ヘルプとマクロの記録機能があれば、書物もネット上の情報も必要ありません。 1.最大値の設定 Worksheets("Sheet1").ChartObjects(1).Chart.Axes(xlValue, xlSecondary).MaximumScale = 500 どこの縦軸かを指定する変数:xlValue, xlSecondaryは状況にあわせて修正。 2.元データ こんな感じ。 Worksheets("Sheet1").ChartObjects(1).Chart.SetSourceData Source:=Sheets("Sheet1").Range("A1:A10") 3.グラフの数値軸 グラフの種類でユーザー設定のところから2軸上の折れ線グラフというのがお望みのそれに近いと思います。 ChartType プロパティで設定します。 こんな感じ Charts.Add ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:="2 軸上の折れ線と縦棒"

gotetsu
質問者

お礼

1.2については、多少工夫した末、満足の行く結果をえることが出来ました。 3については、お察しのとおりの内容です。 ご教示いただいた構文をセットすると、グラフシートが表示されるのですが、その後の設定の仕方がよくわからず、今に至っています。 もう少し、自分で検討してみますが、また質問した際にはご教示をお願いいたします。 とにかく作業が進められましたので、御礼申し上げます。 どうもありがとうございました。

関連するQ&A

  • excelのグラフ作成をマクロで

    excelのデータが多くてマクロで手っ取り早く処理したいのですが、どうすればよいのでしょうか? 初心者なもので。。。 A列をx軸にしてB列~P列をy軸にします。 1枚目がAとBでグラフを作成し、続いて2枚目としてAとCでグラフ作成し、同様にD・E・F・・・って作成したいです。 グラフは新しいシートを作成していきたいです。(計15枚だと思います。) で、そのシートの名前もつけたいです。 で、書式設定もマクロ上できたらうれしいです。 できないでしょうか? よろしくお願いします。

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

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

  • エクセル2007でグラフの縦軸値の表示設定は?

    エクセル2007でグラフの縦軸左に表示されている目盛り(?)の値、最小0と最大の数値が表示できません。 間の100とか200という数値はきちんと表示されるのですが、どこで設定するのでしょう。 グラフ上のデータの数値は表示できているので差支えはないのですが 他に同じような形のグラフでは縦軸の目盛りが表示できているのに、どうも気持ち悪いです。 よろしくおねがいします。

  • エクセルでグラフをマクロ化することはできますか?

    エクセルで、ごく簡単な表をグラフ化するのですが、マクロ化することはできますか? 例をあげます。 A1、B1、C1、D1、E1にそれぞれ数値(整数)が入っています。セルがたった5つだけの簡単な表です。これと同じ形式の表が10あります。これを円グラフに表し、割合として表示します。一つの表をグラフウィザードで円グラフにするのは、いたって簡単です。しかし、5つあるデータエリアの色をすべて変え、引込み線をつけない、凡例のフォントの大きさ、種類を変えるなど、設定をいろいろ変えました。この操作を10ある表すべてに繰り返しやりたくないのですが、マクロでできますか?あるいは、ほかによい方法がありますか?

  • エクセルグラフの縦軸

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

  • エクセルのグラフに関してなんですが・・・

    タイトルの通り、エクセルのグラフに関して質問いたします。 ある表を元にして、グラフを作っているのですが グラフ自体は特に変更することがないので、シートの保護でグラフも変更できないようにしているのですが グラフ上の数値を確認するのに、あるグラフはカーソルを合わせると数値を表示しますが、あるグラフではまったくまったく反応しない。と、いうことがあります。 このような結果は何か設定上の問題なのでしょうか?

  • EXCELのグラフ

    EXCELでグラフを作っていますが、縦軸の数値が小さくなったので変更したいのですが、グラフの種類などの変更はできますが、グラフ内の数値の変更がどこにあるのかわかりません。以前のEXCELでは右クリックすると範囲メモリの修正(?)というものが出てきて簡単に修正できました。教えてください。

  • エクセル グラフの元データはどこ!?

    こんばんは。土日も深夜もなくエクセルと格闘中でございます。 どなたか、どうか、お助けください・・・。 エクセルの達人?と思われる人から送られてきたエクセルファイル  ・Exel 2000で、マクロ設定がYesで有効、無効にできる程度のセキュリティ   がっかっています 完全に文章とグラフで仕上げられた美しい報告書です。 ですが、データをいじって修正したいのに、ファイルのどこを さがしても、元データらしきシートも表もないのです。  ファイルはこれだけメールで送信されてきて、フォルダ内に  他に何もリンクしているファイル・シートもないのですが、 元データはどうやったらいじれるのでしょう???? エクセルのグラフといえば、単純に集計表を作って、それから グラフ化するのですが、元となる表は別シートなどに普通あるかと 思うのです。 ですが、この報告書、達人すぎて何一つ元データや表にあたるものが 見当たりません。 ●エクセルのマクロ設定によって?恐らく元データ表をグラフに変換  してあるか?、、、私の知らない高度なテクニックをご存知の方! ●ぜひ、グラフしかついていない、マクロ設定のファイルのどこに  元データが隠れているのか?  どうやったら元データを表レベルで修正できるのか? 教えてください!どうかよろしくお願いいたします。

  • エクセルのグラフの作り方で質問です!

    今度発表があるので、データまとめにエクセルを使っています。 そこで分からない点があったので質問致します。 点グラフで数値の推移を表すグラフを作りたいのですが、表グラフでまとめた数値通りの横軸のデータに対して縦軸のデータ数値が来てほしい場合はどのようにすればよいのでしょうか? 図も付けましたが、例えば、横軸が日付、縦軸にある数値を入れたグラフを作るに当たり、点グラフを作りますと、横軸の日付が省略(設定での~日間設定)どおりに出て来てしまうのです。日付は規則正しい間隔のデータではないため、毎日続くときもあれば、2週間次のデータだったりなので、1/1はこの数値、1/2はこの数値1/17はこの数値という風に表すことは可能なのでしょうか? 自分のあまりのエクセルへのセンスの無さと説明不良を御容赦下さい。

  • エクセル・グラフ

    はじめまして。 エクセルで折れ線グラフを作成したいのですが、数値を入力して挿入からグラフを選択、そして折れ線グラフを選んで表示させてみると、縦軸と横軸は表示されましたが、線自体は横軸をずっと0の数値で沿っています。 数値は、横軸は日付、縦軸は体温です。 体温は文字列として記入しました。 どうすればいいのかわかりません。 助けてください。

専門家に質問してみよう