Excelの株価チャートには下記の4種があります。
- 高値 - 安値 - 終値 : xlStockHLC
- 始値 - 高値 - 安値 - 終値 : xlStockOHLC
- 出来高 - 高値 - 安値 - 終値 : xlStockVHLC
- 出来高 - 始値 - 高値 - 安値 - 終値 : xlStockVOHLC
グラフの作成プログラムは、折れ線・棒グラフ・円グラフ・散布図・面グラフ・ドーナツ・レーダー・等高線・バブル・円柱・円錐・ピラミッドと同じですが、高値
~ 終値等のデータ順は合わさないといけません。
Excel実行画面
・ グラフの元データと「高値 - 安値 - 終値」の株価チャート
・ グラフの元データと「始値 - 高値 - 安値 - 終値」の株価チャート
・ グラフの元データと「出来高 - 高値 - 安値 - 終値」の株価チャート
・ グラフの元データと「出来高 - 始値 - 高値 - 安値 - 終値」の株価チャート
Excel VBA実行コード
■高値 - 安値 - 終値 : 株価チャート
Private Sub CommandButton3_Click()
Dim trange As Range
Dim tCh As ChartObject
Dim ypos As Long
Dim stname As String
stname = ActiveSheet.Name
Set trange = Worksheets("Sheet1").Range("D1:G13")
ypos = 220
'作成領域
Set tCh = Worksheets("sheet1").ChartObjects.Add(20, ypos, 400, 200)
'高値 - 安値 - 終値
tCh.Chart.SetSourceData Source:=trange, PlotBy:=xlColumns
tCh.Chart.ChartType = xlStockHLC
tCh.Chart.HasTitle = True
tCh.Chart.ChartTitle.Characters.Text = "売上推移 高値 - 安値 - 終値"
End Sub
■始値 - 高値 - 安値 - 終値 : 株価チャート
Option Explicit
Private Sub CommandButton3_Click()
Dim trange As Range
Dim tCh As ChartObject
Dim ypos As Long
Dim stname As String
stname = ActiveSheet.Name
Set trange = Worksheets("Sheet2").Range("D1:H13")
ypos = 220
'作成領域
Set tCh = Worksheets("sheet2").ChartObjects.Add(20, ypos, 400, 200)
'始値 - 高値 - 安値 - 終値
tCh.Chart.SetSourceData Source:=trange, PlotBy:=xlColumns
tCh.Chart.ChartType = xlStockOHLC
tCh.Chart.HasTitle = True
tCh.Chart.ChartTitle.Characters.Text = "売上推移 始値 - 高値 - 安値 - 終値"
End Sub
■出来高 - 高値 - 安値 - 終値 : 株価チャート
Option Explicit
Private Sub CommandButton3_Click()
Dim trange As Range
Dim tCh As ChartObject
Dim ypos As Long
Dim stname As String
stname = ActiveSheet.Name
Set trange = Worksheets("Sheet3").Range("D1:H13")
ypos = 220
'作成領域
Set tCh = Worksheets("sheet3").ChartObjects.Add(20, ypos, 400, 200)
'出来高 - 高値 - 安値 - 終値
tCh.Chart.SetSourceData Source:=trange, PlotBy:=xlColumns
tCh.Chart.ChartType = xlStockVHLC
tCh.Chart.HasTitle = True
tCh.Chart.ChartTitle.Characters.Text = "売上推移 出来高 - 高値 - 安値 - 終値"
End Sub
■出来高 - 始値 - 高値 - 安値 - 終値 : 株価チャート
Option Explicit
Private Sub CommandButton3_Click()
Dim trange As Range
Dim tCh As ChartObject
Dim ypos As Long
Dim stname As String
stname = ActiveSheet.Name
Set trange = Worksheets("Sheet4").Range("D1:I13")
ypos = 220
'作成領域
Set tCh = Worksheets("sheet4").ChartObjects.Add(20, ypos, 400, 200)
'出来高 - 始値 - 高値 - 安値 - 終値
tCh.Chart.SetSourceData Source:=trange, PlotBy:=xlColumns
tCh.Chart.ChartType = xlStockVOHLC
tCh.Chart.HasTitle = True
tCh.Chart.ChartTitle.Characters.Text = "売上推移 出来高 - 始値 - 高値 - 安値 - 終値 "
End Sub