Garmin Connectは、Garmin製スマートウォッチのユーザに取って、非常に使い勝手の良いツールです。
私は、睡眠時間のモニタリングをするために、そのデータをExcel上でグラフ化して バイオリズムのモニタリングをしております。そのとき、ブラウザ上のデータを クリップボード経由で Excelへ自動転記するマクロを作成して省力化しています。
'
' Garmin Connect>睡眠ページ>全選択>コピーの内容から,
' 睡眠データを自動コピーする。
'
Public Sub PasteBedTime()
'
' クリップボードのデータ取出し
'
Dim x As DataObject
Set x = New DataObject
x.GetFromClipboard
Dim buff As String
buff = x.GetText
#If False Then
'' デバッグデータをテキストファイルからロード
Dim temp As String
buff = ""
Open "C:\clipboard dummy.txt" For Input As #1
Do Until EOF(1)
Line Input #1, temp
buff = buff & temp & vbCrLf
Loop
Close #1
#End If
'
' 入眠時間を探す
'
Dim v() As String
v = Split(buff, vbCrLf)
'' 就寝時刻
Dim t_in As String
Dim i As Integer
For i = 0 To UBound(v)
If v(i) = "就寝時刻" Then
t_in = v(i - 1)
End If
Next
'' 起床時刻
Dim t_wakeup As String
For i = 0 To UBound(v)
If v(i) = "起床時刻" Then
t_wakeup = v(i - 1)
End If
Next
'' 合計睡眠時間
Dim td0 As String
For i = 0 To UBound(v)
If v(i) = "合計睡眠時間" Then
td0 = v(i - 1)
End If
Next
Stop
'' 深い睡眠
Dim td1 As String
For i = 0 To UBound(v)
If v(i) = "深い" Then
td1 = v(i - 1)
End If
Next
'' 浅い睡眠
Dim td2 As String
For i = 0 To UBound(v)
If v(i) = "浅い" Then
td2 = v(i - 1)
End If
Next
'' 非睡眠
Dim td3 As String
For i = 0 To UBound(v)
If v(i) = "非睡眠" Then
td3 = v(i - 1)
End If
Next
'
' セルに書込み
'
ActiveCell.Offset(0, 0).Value = t_in
ActiveCell.Offset(0, 1).Value = t_wakeup
ActiveCell.Offset(0, 2).Value = td0 ''< 合計睡眠睡眠
ActiveCell.Offset(0, 3).Value = td1
ActiveCell.Offset(0, 4).Value = td2
ActiveCell.Offset(0, 5).Value = td3
End Sub
尚、UWSCというマウス/キーボード操作の自動化ツールを使用すれば、PCを放って置くだけで、全自動で転記作業を行うことも可能です。