RSSを使用すると、板情報などが取得できます。 しかしこの情報をある間隔毎に記録させ、後で分析したい場合があると思います。 これの応用としてロウソク足を作ることができます。
2.Excel VBA:
(1) 楽天RSSを起動する。
(2) エクセルで(VBAで処理)タイマーを使ってデータを1秒毎に記録できるようにする。
(3) 毎秒1行挿入していく(今まで記録した終値を下へずらす)
具体的には、次のExcel VBAです。 C3に楽天のRSSの関数を挿入し、3秒ごとにC3のデータを読み取り、 C6にコピーし、1つずつずらいていく。
Option Explicit Public STOP_B As Boolean Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub ストップ() STOP_B = False End Sub Sub スタート() Dim i As Integer Dim t As Integer Dim a As Integer Dim r As Range Dim timenow As Variant i = 8 a = 8 STOP_B = True Do While True t = 0 timenow = Format(Time(), "HH:mm:ss") '1秒スリープする While t < 100 Call Sleep(10) DoEvents t = t + 1 Wend If timenow = Format(Time(), "HH:mm:ss") Then Sheet1.Cells(a, 5).Value = Sheet1.Range("E7").Value Sheet1.Cells(a, 6).Value = Sheet1.Range("F7").Value Sheet1.Cells(a, 7).Value = Sheet1.Range("G7").Value Sheet1.Cells(a, 8).Value = Sheet1.Range("H7").Value Sheet1.Cells(a, 9).Value = Sheet1.Range("I7").Value Sheet1.Cells(a, 10).Value = Sheet1.Range("J7").Value Sheet1.Cells(a, 11).Value = Sheet1.Range("K7").Value Sheet1.Cells(a, 12).Value = Sheet1.Range("L7").Value Sheet1.Cells(a, 13).Value = Sheet1.Range("M7").Value Sheet1.Cells(a, 14).Value = Sheet1.Range("N7").Value Sheet1.Cells(a, 15).Value = Sheet1.Range("O7").Value Sheet1.Cells(a, 16).Value = Sheet1.Range("P7").Value Sheet1.Cells(a, 17).Value = Sheet1.Range("Q7").Value Sheet1.Cells(a, 18).Value = Sheet1.Range("R7").Value Sheet1.Cells(a, 19).Value = Sheet1.Range("S7").Value Sheet1.Cells(a, 20).Value = Sheet1.Range("T7").Value a = a + 1 Else Sheet1.Cells(i, 4).Value = timenow '時間 Sheet1.Cells(a, 5).Value = Sheet1.Range("E7").Value Sheet1.Cells(a, 6).Value = Sheet1.Range("F7").Value Sheet1.Cells(a, 7).Value = Sheet1.Range("G7").Value Sheet1.Cells(a, 8).Value = Sheet1.Range("H7").Value Sheet1.Cells(a, 9).Value = Sheet1.Range("I7").Value Sheet1.Cells(a, 10).Value = Sheet1.Range("J7").Value Sheet1.Cells(a, 11).Value = Sheet1.Range("K7").Value Sheet1.Cells(a, 12).Value = Sheet1.Range("L7").Value Sheet1.Cells(a, 13).Value = Sheet1.Range("M7").Value Sheet1.Cells(a, 14).Value = Sheet1.Range("N7").Value Sheet1.Cells(a, 15).Value = Sheet1.Range("O7").Value Sheet1.Cells(a, 16).Value = Sheet1.Range("P7").Value Sheet1.Cells(a, 17).Value = Sheet1.Range("Q7").Value Sheet1.Cells(a, 18).Value = Sheet1.Range("R7").Value Sheet1.Cells(a, 19).Value = Sheet1.Range("S8").Value Sheet1.Cells(a, 20).Value = Sheet1.Range("T7").Value i = i + 1 a = a + 1 End If If STOP_B = False Then MsgBox "お疲れ様でした" Exit Sub End If Loop End Sub Function xSleep(ByVal dwMilliseconds As Long) Call Sleep(dwMilliseconds) End Function Sub Macro1() ' ' Macro1 Macro ' ' End Sub
4.ファイル:
【Excel ファイル】