血圧記録

血圧

文字通り血圧の測定値を記録するデータベース・ファイルです。
入力が面倒だと長続きしないので、入力項目は最低限の患者番号、最高血圧、最低血圧の三つだけにしました。
また、年中デスクトップに開いておいても邪魔にならないようウィンドウを極力小さくしました。

ファイルメーカーProでもプラグインを使うとグラフの表示ができるようですが、グラフを作るのならやはりMicrosft Excelを利用した方が断然自由度が高いだろう、ということで、デスクトップに”BP”というファイル名でSILK形式のファイルを出力して、Microsft Excelで読み込みグラフを描く、という処理をAppleScriptとVBAで自動化しました。

血圧グラフ

ファイルメーカーProでは、

患者番号で検索、
日付順にソート、
レコード書きだし、
AppleScriptを実行、
というスクリプト・ステップを作ります。
AppleScriptの内容は

tell application "Finder"
 activate
 select file "血圧のグラフ化" of folder "文書保管用" of startup disk
 open selection
end tell


Microsft Excelでは、「血圧のグラフ化」というファイルにグラフを作成するマクロを作成します。
グラフを作成するコードを一から書くとなると気の遠くなるような作業ですが、幸いサンプルデータを使って実際にグラフを作成する操作をマクロに記録することでほとんど事足りてしまいます。
ただし、記録したままではグラフ化するデータ範囲が固定になってしまいますので、どうしても多少はコードを書き換える必要があります。
長いコードになるので、冒頭部分のみ以下に引用します。

Sub Auto_open()
ChDir "Macintosh HD:Desktop Folder:"
    Workbooks.Open FileName:="Macintosh HD:Users:ariga:Desktop:BP"

Application.ScreenUpdating = False
  Cells.Select
    With Selection.Font
       .Name = "Osaka"
       .Size = 9
    End With
Dim idname As String
idname = Range("A1") & Range("B1")
Columns("A:B").Select
Selection.Delete Shift:=xlToLeft

    Range("A1").Select
Set bpdata = ActiveCell.CurrentRegion
  bpdata.Select
Charts.Add
  ActiveChart.ChartType = xlLineMarkers


デスクトップにあるファイル”BP”を読み込む。
Application.ScreenUpdating = False
は処理の進行を反映して画面が変わるのを停止しておくためのコードで、
Application.ScreenUpdating = True
と対にして使います。
シート全体を選択してフォントをOsakaの9ポイントに変更。
A列は患者番号、B列は患者名が全ての行に記録されているので、
変数idnameにIDと氏名を代入した上でAB列を削除。
そして、その後の、
Range("A1").Select
Set bpdata = ActiveCell.CurrentRegion
bpdata.Select

の部分がグラフ化するデータ範囲選択のコードです。
A1セルと連続しているデータ範囲を”bpdata”という変数に代入し、これを選択してグラフ化します。

なお、このようにAuto_open()という名前をつけたマクロは、ファイルを開くと同時に自動的にマクロが実行されます。

さらに、マクロの末尾に自分自身を閉じるコードを、

Windows("血圧のグラフ化").Activate
ActiveWindow.Close
End Sub


のように書いておくと、処理の終了とともにファイルを閉じます。
ただし、こうするとファイルを開いても瞬時に閉じてしまうので、通常の操作では編集が出来なくなります。
意図的にエラーを起こすようにすると、デバッグを促すダイアログが表示され、ファイルが開いたまま停止します。

血糖記録

血圧記録とほとんど同じことです。
HbA1cの数値をグラフ化するようにしました。


血糖

血糖グラフ


HOME  TOP↑  ORCAのページのTOP