Japan Association for Medical Informatics

[3-Q-1-03] 電子カルテの検査結果から、エクセルマクロを用いて自動的にデータベースを作成する方法:「★かんたんデータベース」の作成。

*Kodo Tomida1 (1. 淀川キリスト教病院)

Excel, Macro, electronic health record, databese, VBA

【背景】臨床研究において、データベース作成、特に検査結果の入力は多大な労力を要する。この作業を、エクセルのマクロを用いて劇的に省力化する方法を考案した。
【方法】A:富士通電子カルテの場合:まず、データベースを作るエクセルファイル(以下DB)でシート1 のA列B列に、あらかじめ検査結果をcsvファイルにして保存したもの(以下csv)から検査項目名と検査結果をコピーペーストすると、VLOOKUP関数によって、C列D列には決まった順に検査項目と検査結果が並ぶようにしておく。D列に並んだ検査結果を、DBのシート2 の最終列に追加していくとデータベースになる。
 そこで、①csvを開く、②患者ID、氏名、検査日時、検査結果をDBにコピーペーストする、③並び直された患者ID、氏名、検査日時、検査結果を、次のシートの新しい列に追加する、④csvを閉じる という作業をエクセルのマクロで自動化し、連続的に行う。これにより、あらかじめ必要なデータを検査結果ファイルとして保存しておけば、あとはワンクリックでデータベースを作成することができる。
B:NEC電子カルテの場合:検査結果画面を、全選択し、コピー、ペーストするとエクセルに添付できる。このとき、項目名と検査結果が同じセルに入るので、エクセル関数を用いて、項目名と検査結果を別の列に分離する。検査結果の列を、DBのシート2の最終列にコピーペーストすることでデータベースとなる。最後の段階をマクロで自動化することで、データベースを作成できる。
【結果】データベース作成に要する時間は劇的に減少した。富士通の電子カルテでは、30例分の検査結果ファイルからデータベースを作成するのに要した時間は約10秒であった。手作業による転記は不要で、転記ミスが起こらない点も利点である。