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 ファイル】














