長かった講座も今回で一応最後となります。今回は持参薬鑑別システムの最終処理を行います。それではいきましょう。

スポンサーリンク

This Workbook

 

具体的には市販されているシステムのように以下を行います。

1 ワークシートを消してユーザーフォームだけ表示させる。
2 ファイルを開いたら自動的にfrmMenuが開くようにする。
3 frmMenuの閉じるを押すと、登録、変更した医薬品データを自動的に保存しExcelを終了させる

では進めていきますが、1と2は同時にいきましょう。

 

vba5-16-1VBAProjectにThisWorkbookという部分がありますね。これを右クリックしてコードを表示を選択。ダブルクリックでもOKです。

 

vba5-16-2今は何も書かれていませんね。

 

vba5-16-3そこで上のコンボボックスからWorkbookを選択します。

 

vba5-16-4上の画像のようなコードが出てきました。意味は簡単です。「ワークブック(日本病院持参薬鑑別システム)を開いた時に○をする」となります。さて、ここには何を書けばいいでしょうか?

 

vba5-16-5上の画像のように入力して下さい。ではまた1行ずつ解説していきましょう。

 

Application.Visible = False

これは「アプリケーション(ワークブック持参薬鑑別システム)を表示(Visible)しない(False)。」となります。これでワークシートを全て表示しないように設定できます。

 

市販のシステムはユーザーフォームしか表示されていませんよね?ちなみにワークシートは見えていませんが、削除されたわけではないのでご安心下さい。

 

Falseは一般的に「正しくない」や「偽」等と訳されますが、VBAでは「~でない、~しない」と訳した方がしっくりきます。

 

ただ一つコードを追加する必要があります。このままですとfrmInputで印刷ダイアログを表示して鑑別報告書を印刷する時にワークシートが表示されてそのままになってしまいます。

 

印刷する時はワークシートが強制的に表示されるのです。そのため印刷した後に再びワークシートを非表示にするコードを書きましょう。

 

vba5-16-9赤枠で囲ったコードを追加して下さい。これでOKです。あと印刷プレビューをすると全画面表示されて印刷プレビューを閉じるボタンが表示されません。
vba5-14-7元に戻りたい時は「タスクバーを右クリック→ウインドウを閉じる」でOKです。ちなみにブックを非表示にしなければこういった問題は出ません。面倒臭いのが嫌いな方はこのコードは書かなくてもいいでしょう。

 

続いて

frmMenu.Show

これは何回もやっています。「frmMenuを表示する。」

 

これによりワークブックを開いた時に自動的にfrmMenuが表示されるため、毎回F5キーを押さなくてもよくなります。

 

ただ他にまだ作業したい場合はこの動作が起こらない方が都合がいいですね。その場合はコードの前に「’」を付けて下さい。コメント扱いとなり、実行されなくなります。

 

vba5-16-6こんな感じですね。こうすればコードは実行されません。完成後に「’」を外すようにして下さい。

スポンサーリンク

では最後のコードを書いていきましょう。frmMenuの閉じるボタンのコードを見て下さい。

vba5-16-7このままですと普通にfrmMenuを閉じるだけで、新規登録した薬や修正をかけた薬の情報が保存されません。処理を付け加える必要があります。

 

vba5-16-8Unload Meの下にコードを追加します。解説していきましょう。

 

ThisWorkbook.Save

「このワークブックを(Save)保存する」です。そのまんまですね。ちなみに保存方法ですが、上書き保存となります。

 

Application.Quit

これもそのまんまですね。「Application(ここではExcel)をQuit(終了)する」となります。この2行で上書き保存し、Excelを終了するという動作を行います。

 

いや~お疲れ様でした!

 

持参薬鑑別システムについてはとりあえずこれで完成です。もし手書きで鑑別報告書を作成されている薬剤師の方がいらっしゃましたらぜひ現場で使ってみてください。自分で言うのも何ですが、実用レベルだと思います。

 

さて本システムを作成するにあたり、色々なステートメントやコントロールを使用しましたが、これはほんの一部です。今回は必要最低限の知識で作成するというのがコンセプトでしたので、本当に厳選したものだけを使用しました。

 

この講座を通して皆さんはシステムを1から作りました。VBAのレベルは相当アップしています。過去に読んでもわからなかった書籍もある程度理解できるようになっていると思います。

 

この後は完全に自力でシステムを作成するのも良し、レベルアップするために書籍を購入したり、セミナーに参加されるのも良し。頑張って下さいね。

 

ここまで読んで頂きましてありがとうございました。駄文にもかかわらず、最後までお付き合い頂いた皆様に本当に感謝致します。

スポンサーリンク