目次

エクセルマクロ作成の手引

概要

エクセルマクロは、ご自身で作成していただけます。

弊社にて提供しておりますエクセルファイルの中身を見ていただけますと、比較的簡単に改造してお使いいただけると思います。

「対応表」シートの記載だけで殆どの場合に対応できると思いますが、その際に必要となる情報は以下のとおりです。

なお、エクセルにて ALT+F11 でソースコードの編集画面が開きますので、その内容をお読みいただくのが最も正確です。

難しい場合や、時間的な余裕がない場合には、弊社にご依頼いただければ有償で開発いたします。 NCD Helper 周辺ソフトウェアのカスタマイズなどのご依頼・お問い合わせ にてお気軽にご依頼ください。

使用するファイル

ここでは、以下のファイルを用いて説明いたします。 要素名が架空のものであるため、実際には NCD の登録には使えませんが、一通りの機能が網羅されております。

NCD登録_説明用.xlsm をダウンロード

ダウンロードしたファイルを開こうとすると、マクロを含むため、PC のセキュリティにて阻止されてしまいます。 エクセルマクロ実行におけるセキュリティについて を参考に、制限を解除してご利用ください。

NCD Helper データ登録用エクセルマクロファイルの構成

このエクセルファイルは、既存の手術データから Google Chrome の拡張機能である NCD Helper を使用して、手術データを NCD(National Clinical Database)に効率的に登録するためのマクロファイルです。

必要なワークシート

その他のワークシートは動作に必須ではありません。

基本的な利用方法

  1. 「Main」シートのボタンからユーザーフォームを起動
  2. フォームの「新規用コピー」または「全体コピー」ボタンを使用して、「対応表」で指定された変換処理により作成された NCD Helper 形式のテキストをクリップボードにコピー
  3. Google Chrome で NCD の登録ページを開き、NCD Helper の「データ注入」ボタンを押す

データワークシートの仕様

対応表ワークシートの項目説明

項目名説明
NCD要素名NCD の登録ページで使用されている入力項目の要素を指定(必須項目)
NCD要素意味入力項目の表示名(メモ用)
分類新規の場合は新規用コピー、全体コピーの場合は「新規」および空白の項目が使用
タイプ変換形式のタイプを指定
データ列変換に使用する元データの列を指定(アルファベット形式または数値で指定、複数指定時はカンマ区切り)
入力パラメータ変換パラメータを指定(変換形式のタイプにより内容が異なる)
出力パラメータ変換パラメータを指定(変換形式のタイプにより内容が異なる)
コメント備考欄(メモ用)

注意事項

データ と 対応表 の例

データ シート

患者番号 患者性別 患者生年月日 最終分類 学会区分 学会区分詳細 疾病分類 疾病部位詳細 入院日 退院日 手術開始日時 手術終了日時 ICU在室日数 術者/処置者 助手 麻酔法 手技 生存確認日 生死 入院時体重 術直後体重 退院時体重 BMI 採皮部 選択肢A 選択肢B 選択肢C 選択肢D
123456 0 1957/5/29 末梢動脈閉塞疾患(PDA)(閉塞性動脈硬化症ASO) Ⅴ難治性潰瘍 その他の潰瘍(下腿・足潰瘍を含む) 下肢 2024/4/29 2024/5/1 2024/4/30 10:30 2024/4/30 11:42 間 黒男 ピノ コ 全身麻酔 K084 四肢切断術(下腿) 2024/5/1 生存 56.2 51.2 52.6 20 鼠径部
123457 1 1946/7/31 末梢動脈閉塞疾患(PDA)(閉塞性動脈硬化症ASO) Ⅴ難治性潰瘍 その他の潰瘍(A)(B)(C) 下肢 2024/4/28 2024/5/10 2024/4/30 23:45 2024/5/1 0:54 2 間 黒男 ピノ コ 全身麻酔 K084 四肢切断術(足) 2024/5/10 死亡 72.4 70.3 72.4 33 足底部

対応表 シート

NCD要素名 NCD要素意味 分類 変換処理 データ列 入力パラメータ 出力パラメータ 条件値
TEMP固定値temp_value
PATIENT_ID院内管理コード新規患者番号
SEX患者性別新規患者性別0|1|*NOTEMPTY*|*EMPTY*男|女|その他|未記入
DATE_BIRTHDAY患者生年月日新規日付患者生年月日
OPE_START_TIME(架空の要素)時刻手術開始日時
PREOP_DAYS(架空の要素)日付差分入院日,手術開始日時
OPE_TIME(架空の要素)時刻差分手術終了日時,手術開始日時
OPE_TIME_時間(架空の要素)OPE_TIME
OPE_TIME_分(架空の要素)OPE_TIME
日帰り(架空の要素)日付判定入院日,退院日
DATE_HOSP_DEAD_DATE死亡年月日日付判定生存確認日,生死死亡
DATE_OUT_FROM_CU最重症ケアユニットからの退出日日付加算手術開始日時,ICU在室日数
BW_増加量(架空の要素)数値差分入院時体重,退院時体重
BW_変化(架空の要素)数値比較入院時体重,退院時体重増加|不変|減少
TEMP数値加算入院時体重,術直後体重,退院時体重
BW_平均(架空の要素)数値逓倍TEMP0.333
BMI_分類(架空の要素)数値分類BMI18.5|25やせ過ぎ|普通|普通|肥満|肥満
学会区分_番号(架空の要素)文字列抽出学会区分1|1
学会区分_本体(架空の要素)文字列削除学会区分1|1
学会区分_文字購入(架空の要素)文字列挿入学会区分1| @
最終分類_小文字(架空の要素)文字列変換最終分類2
マスイ法(架空の要素)文字列置換麻酔法麻酔マスイ
disease_region疾患部位連結疾病分類,疾病部位詳細
手技_接尾辞(架空の要素)分離手技2
助手_イニシャル姓(架空の要素)イニシャル姓助手
助手_イニシャル名(架空の要素)イニシャル名助手
学会区分詳細_カッコ削除(架空の要素)正規表現学会区分詳細(.+?)
学会区分詳細_カッコ有無(架空の要素)正規表現マッチ学会区分詳細(.+?)カッコあり|カッコなし
学会区分詳細_カッコ内部(架空の要素)正規表現サブマッチ学会区分詳細((.+?))0
学会区分詳細_サブマッチ置換(架空の要素)正規表現サブマッチ置換学会区分詳細((.+?))1番目のカッコ内は "$1" です
all_skin_donor_site採皮部LIKE採皮部*耳*|*鎖骨*|*鼠径*|*内果*|*足底*|*その他*0|1|2|3|4|5
生死◯✕(架空の要素)CB項目生死生存|死亡◯|✕
複数選択(架空の要素)複数カラムCB選択肢A,選択肢B,選択肢C,選択肢D◯|◯|◯|◯0|1|2|3
単一選択(架空の要素)複数カラムRB選択肢A,選択肢B,選択肢C,選択肢D◯|◯|◯|◯0|1|2|3
AFTER_30_STATUS術後30日状態生死判定生存確認日,生死,手術開始日時死亡|30不明|死亡|生存
last_disease_name疾患名参照最終分類最終分類変換表|A|B|2
hosp_diag1_code入院時診断参照正規表現外傷病名外傷病名
TEMP削除

ここで利用されている変換機能は、 エクセルマクロ変換処理一覧 にて説明されています。

Main シート

「データコピー用フォームの表示」ボタンを押してください。

対応表の各行における変換の解説

「対応表」シートには、変換処理が一通り網羅されています。
わかりやすさ優先のため、実際には存在しない NCD 要素を設定しておりますことをご了承ください。

それぞれの変換処理は、 エクセルマクロ変換処理一覧 で解説していますので、併せて参考にしてください。


Warning: Use of undefined constant APIURL - assumed 'APIURL' (this will throw an Error in a future version of PHP) in /home/medeputize/www/emuyn/dokuwiki/inc/parser/xhtml.php(559) : eval()'d code on line 2

Warning: file_get_contents(APIURL/getHtmlFromMd.php?filename=emuyn/ncd_helper/変換処理サンプル解説.md&noprefix): failed to open stream: No such file or directory in /home/medeputize/www/emuyn/dokuwiki/inc/parser/xhtml.php(559) : eval()'d code on line 2