薬局業務日誌のデータ化の最終回、⑧業務日誌として印刷しよう、です。
これまで、業務日誌をデータ化し、印刷するために必要なデータを整えてきました。これらを1週間単位で印刷するためのシートを作成して、印刷手順を理解すれば完成です。
上の図のように「日誌」シートのF2セル~J17セルで表を作成します。
ポイントは1日につき2行使用し、医薬品分譲の記録欄はG~J列でセルを結合します。
また、日付・営業時間の欄も1・2行目でセルを結合します。
表を効率よく作成するために、2・3行目、4・5行目~16・17行目と2行ずつ同じ構成にしてあります。また、表の体裁を整えるためにはいくつかのやり方がありますが、
1)2・3行目でセルの結合などをして、F2セル~J3セルを選択してフィルハンドルをつかんで14行分(2行x7日分)コピーし、その後行の高さを調子する
2)4・5行目で行の高さを含めて体裁を整えてから、4・5行目全体を選択しコピーし、A6セルで貼り付け、A8セルで貼り付け、~A16セルで貼り付けとすると、行の高さを含めてコピーされます
※表全体を選択し、「ホーム」タブの配置→「折り返して全体を表示する」をオンにしておきます。また表のフォントの大きさは10ポイントくらいでいいでしょう。
そして、このシートの「肝」はスピンボタンを配置して、印刷対象の日付をコントロールすることです。
スピンボタンはリボンの「開発」タブの挿入→フォームコントロールの中のスピンボタンを選択し、L2セルあたりに配置します。
スピンボタンを配置したら右クリックし、「コントロールの書式設定」を選択、表示されたウインドウのコントロールタブで以下のように設定します。
- 変化の増分…7(または14)
- リンクするセル…L5(マウスでL5セルを選択すると$L$5と表示される)
- 最小値と最大値は既定のままでOK
- 3‐D表示…見やすくするためにチェックを入れておきましょう
変化の増分はスピンボタンを1回押したときにL5セルの値がいくつずつ増える(減る)かを決める値となります。「14」とするのは、ある期間の日誌をまとめて印刷したい場合、プリンタに用紙をセットしてどんどん印刷したいところですが、用紙の片面に1週間飛ばしで印刷し、あとで裏面にも1週間飛ばしでまとめて印刷するとラクちんなためです。普段は「7」としておき、1週間ごと印刷するといいでしょう。
L4セル…印刷したい日付を入力するためのセル(手入力)
M4セル…「の週から」の文字を入力
L5セル…L4に入力したの日付から〇日経過した週を表示させるか(スピンボタンと連動)
M5セル…「日後」の文字を入力
※L5セルは手入力も可能なので、M4に日付を入力してL5セルに「0」を入力するとその週が印刷できるようになります
L2セル…「=WEEKDAY(L4,1)」と数式を入力(L4セルの日付の曜日を判定)
C列に表示すべき日付を表すセルを用意、D列で第〇週かを判定、E列は曜日(固定)を表示します。
C4セル… =L4-L2+1+L5 (←必ず日曜日になるように補正するため)
C6セル… =C4+1
C8セル… =C6+1、、、C16セルまで同様に数式を入力
D4セル… ="第"&ROUNDUP(DAY(C4)/7,0)、、、D16セルまで同様に入力
さてここまでは、印刷する1週間の日付をどのようにコントロールするか、でした。つぎは、印刷する内容をどのように参照するかになります。
F4(結合)セル… =TEXT(C4,"yyyy/m/d (aaa)")&CHAR(10)&VLOOKUP(C4,一覧!A:C,3,0)
※日付と曜日、営業時間を表示する
G4セル… =VLOOKUP($C4,一覧!A:L,8,0)&" 枚"
H4セル… =VLOOKUP(C4,一覧!A:M,9,0)&" 件"&CHAR(10)&VLOOKUP(C4,一覧!A:M,10,0)
I4セル… =VLOOKUP(C4,一覧!A:M,13,0)
G5(結合)セル… =IFERROR(VLOOKUP(C4,分譲・店間移動!Z:AB,3,0),"")
※G5,7,9…の結合セルのフォントの大きさは「8」ポイント、行の高さは170ピクセル程度にします
月~土までの行にも同様に入力するところですが、面倒くさいのでF4~J5を選択し、コピペしていきます。
ここで試しに、L4セルに日付を入力し、スピンボタンを1回、2回と押してみると日付と印刷内容が変わっていくのが確認できるでしょう。
これで、業務日誌がデータで管理でき、かつ紙媒体に記録もできるようになりました。あと一息、保健所のいちゃもんに対応すべく、毎日印刷にも対応しましょう。
1日ずつ(毎日!)印刷することもできるようにするためには、チェックボックスコントロールをA4、A6、~A16セルに計7個設置して先ほどのスピンボタンと同様にリンクするセルをB6、B8、~B16セルとします。チェックが入れば対応するB列のセルに「TRUE」が、チェックなしの状態では「FALSE」の値が入ります。
この値を利用して条件付き書式で枠線(罫線)を非表示にしたり、文字を非表示にしたりという設定をします。設定は4つ。
対象セル | 条件 | 書式 |
月~土の各1行目を選択 | =$B6=FALSE | 文字を白くする(非表示) |
月~土の各2行目を選択 | =$B6=FALSE | 文字を白くする(非表示) |
F2~J5(タイトル行と日曜日の行) | =$B$4=FALSE | 文字を白くする(非表示) |
F2~J17(表全体) | =$B$4=FALSE | 罫線を非表示にする |
上記のように条件付き書式を設定すれば、日曜日を印刷する際には日曜日だけチェックを入れれば表の項目名や罫線も印刷され、翌日は月曜日のみにチェックを入れると月曜日の印刷内容だけが表示されますので、前日印刷した用紙をプリンタにセットすれば月曜日の分だけ追加されます。同様にして、印刷したい曜日のみチェックを入れれば毎日印刷ができるようになります。
あとは印刷範囲の設定と、シートの最適化です。
F2~J17セルを選択して、リボンの「ページレイアウト」タブのページ設定→印刷範囲→印刷範囲の設定をクリックすると、F2~J17の範囲のみが印刷対象となります。
シートの見栄えをよくするために作業列を非表示にしましょう。B~E列全体を選択して右クリック→非表示を選択します。
ここまで来たら、印刷プレビュー画面で上下左右の余白の調整や、セルの幅、行の高さなどの調整をして何度かテスト印刷をして、いい塩梅に仕上げます。(表裏に印刷するので両側にパンチ穴が来るつもりで左右の余白をとってください)
最後に、印刷した用紙を確認し、管理を担当した薬剤師が押印して、パンチ穴をあけてファイルに綴じれていけば、簡単に業務日誌の作成管理の仕組みが出来上がります。
ここまで、お付き合いいただきありがとうございます。初めてのブログでしたが、なんとかここまでたどり着きました。
これからも、Excelの活用方法をお伝えしていけたらと思っていますので、よろしくお願いします。
また、こんなことを記事にして欲しいなどのリクエストがあればぜひコメントでお知らせいただけると、励みになります。これからもどうぞよろしくお願いします。