
こんにちは、日々薬局業務のDX化を探索してます、GAS剤師です。
今回は、調剤薬局内の期限を通知する簡単な仕組みを作りました。
例えば
- 薬品の有効期限
- 医療機器の点検期限
- 在庫の使用期限
- スタッフの資格更新期限
- 許可証の更新期限
期限のある業務をスプレッドシートで管理していれば期限が自動で通知されると便利ですよね。
本記事では、スプレッドシートで管理している期限に対して、メールに通知を送る方法を解説します。

薬局業務を効率化するためのステップを一緒に学びましょう。
使用するツールと準備
まずは、必要なツールを確認します。
準備するもの
- Google アカウント
- Google スプレッドシート(Google アカウントがあれば誰でも使用できます)
- Google Apps Script(Google アカウントがあれば誰でも使用できます)
これらのツールを準備し、Google スプレッドシートでデータを管理する準備を整えましょう。
スプレッドシートの設定
次に、スプレッドシートで通知したい内容と期限の表を作成します。
- スプレッドシートを開き、期限を管理したいデータを入力します。
- 「日付」や「項目名」など、必要な項目を列に追加します。
- 必要に応じて条件付き書式を設定し、期限が近づくと色が変わるようにします。


すでにエクセルで管理をしている場合はスプレッドシートに簡単に変更できます
Google Apps Scriptで通知設定
ここでは、Google Apps Scriptを使用して通知を設定します。

GASを初めて使う人は以下のブログを参考にしてください。使い方は簡単です!
- スプレッドシートの「拡張機能」から「Apps Script」を開きます。
- 以下のコードを入力します。
function sendReminderEmails() {
// アクティブなスプレッドシートとそのシートを取得
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// シートのすべてのデータを取得
var data = sheet.getDataRange().getValues();
// 今日の日付を取得
var today = new Date();
// メール送信先を指定
var email = "your-email@example.com";
// データの1行目(ヘッダー)を除き、2行目から処理を開始
for (var i = 1; i < data.length; i++) {
// データの1列目(A列)にある日付を取得
var date = new Date(data[i][0]);
// 期限が今日から7日以内で、かつ今日以降のものを判定
var isWithinOneWeek = (date - today <= 7 * 24 * 60 * 60 * 1000) && (date >= today);
if (isWithinOneWeek) {
// メールを送信
var subject = "期限が近づいています";
var message = "以下の項目の期限が近づいています: " + data[i][1];
MailApp.sendEmail(email, subject, message);
}
}
}

トリガーを設定し、毎日通知が行われるようにします
- 「時計」アイコンをクリックし、新しいトリガーを追加します。
- 「sendReminderEmails」を選択し、時間ベースのトリガーを設定します。
メールで通知するメリット
カレンダーに書き込むことでも期限の管理はすることができます。
しかし、データでまとめてメールで通知するのは以下のメリットがあります。

私が使っている実例として、施設患者の介護保険証の期限管理をしてます。
まとめ
DX化を進めることで、調剤薬局の業務効率が大幅に向上します。
GASを活用して、期限管理を自動化し、業務をスマートに進めましょう。
この記事を参考に、ぜひ実践してみてください。