• 締切済み

VBAで折れ線グラフを作るにはどうすればいいですか

シート(A社)にはA社の株の変動の予測(A列にパターン1,2,3,4・・・、1行目に時間)、同じくシート(B社)にはB社の株の変動の予測パターンが入っています(添付画像参照)。 マクロを起動させると、シートResultのグラフのデータを削除して、新たにA社・B社のデータを追加させて新しいグラフを作るというようなマクロを作りたいです。 また、データの範囲(表の開始位置・シュミレーションの回数(縦)・時間(横))はその都度変わるので、絶対参照ではなく、変数で指定できるようにお願いします。 x軸の値を最小値=0,最大値=j(例だと30)というようにしたいです。 i=10 'シュミレーション回数 j=30  '時間 k=cells(rows.count,1).end(xlup).row-i  '表の左上 私のスキル不足で例では、凡例をA社1,A社2・・・B社10としていますが(添付画像参照)、1~10までを区別する必要がないので(むしろ邪魔)、赤線:A社・青:B社のような凡例(右)が付けられると嬉しいです。 50回,100回とシュミレーションの回数を増やしたときにVBAでないととても手に負えません。 よろしくおねがいします。

みんなの回答

回答No.1

まずは、グラフ作成や凡例設定、軸設定まで自動マクロで作成してください。一からソースコードを入力するよりずっと楽です。もちろんctrl+m等で起動出来るようにします。出来たソースコードを見るなりネット検索なりすれば、各パラメータの意味が分かります。どのパラメータを変数入力すればいいか判別し、そこをi, j, kに変えるのです。 以下のような追加が必要になります。 Sub Macro1() 'これは最初からあります Dim i As Long, j As Long, k As Long '使う変数の型宣言(Longは整数) i=Range("A1") j=Range("A2") k=cells(rows.count,1).end(xlup).row-i  '表の左上 '望みのi,j値をセルA1~A2に記入しておけば、ここで値が代入されます。 '変更すれば別セルにも出来ます。 'この後、自動マクロで作成したコードが続く 'グラフの設定部分の数値をi,j,kに変更する End Sub

関連するQ&A