時間制スナックのお客様の終了時間を表示するプログラムを作ることになりました。お客様の終了時間が、スタッフにわかりやすくすることを主な目的にしています。
システム要件は、下記の内容です。
1.お客様の終了時間が、わかりやすく表示される。
2.会計伝票を計算する。(提携団体の割引価格に対応する)
3.売上金額の日報/月報集計を行う。
このプログラムをエクセルで作るテクニックをまとめました。
テーブルパネルを常時待機状態で表示して、[伝票]ボタンを押して会計計算をします。タブレットPCで[伝票]ボタンに振れると伝票画面に切り替わります。
メニューの詳細な入力は、[詳細]ボタンでポップアップメニューで入力します。
店内全体の状況は、下のような画面で確認できます。
接客中の未精算データは、一時保存され精算時に確定データとして保存されます。
開始ボタンで終了時間の監視をスタートします。リアルタイムにテーブルパネルの色が変わります。
必要なテクニックは、下記の通りです。
1.コマンドボタンを押してデータシートを切り替える。
2.一時保存データシートに伝票データを書き込んだり取得したりする。
3.タイマー機能で、一定時間ごとに画面の再表示処理を実行する。
4.セルの背景色をプログラムで変更する。
では、テクニック情報を参考にしたページを紹介します。
データシートを切り替える
Office TANAKA - Excel VBA講座:シートの操作[シートを開く]
エクセルのシートを前面に表示するには、Activate と Select の2つの命令があります。どちらを使っても結果は同じです。使いやすい方を使ってください。
エクセルは、コレクションという階層型のグループを持っています。このコレクショングループの概念を理解することが必要です。
つまり、「伝票」という名前のシートを前面に表示する命令は次のようになります。
Worksheets("伝票").Activate
「Worksheetsコレクションの中の「伝票」シートをアクティブにしなさい。」と言う命令になります。
データシートにデータを書き込んだり取得したりする
Office TANAKA - Excel VBA講座:セルの操作[データの取得]
セル値の取得や書き込みは、簡単です。
Worksheets("伝票").Range("C3").Value = "テスト文字"
上の命令は、「伝票」シートの[C3セル]に「テスト文字」をセットしなさい。と言う命令です。
コンピュータのプログラムでは = の記号は、「= の右側の値を左側に代入しなさい。」という命令になります。
コンピュータプログラムでデータを受け渡しするには、変数が必要です。
変数とは、電卓のメモリーみたいなもので、変数宣言することによりいくつでもメモリーが使えるようになります。
例えば、
Dim STR名前 as String という命令は、STR名前 という文字型メモリーを準備しなさい。と言う命令文になります。
そうすると
STR名前 = Worksheets("伝票").Range("C3").Value
と記述すると、「伝票」シートの[C3セル]の値を「STR名前」と言うメモリーに記憶します。
タイマー機能で、一定時間ごとに処理を実行する
Windows API 関数を使用して、タイマー イベントを作成するには
タイマー処理のプログラムは、初心者の方には難問です。Windowsでは、API(アプリケーション・プログラム・インターフェイス)という多くの便利な部品がWindowsの基本部品として標準で用意されています。 この機能を使うには、VBAで記述しなければ利用できません。VBAを書くことができれば、多くのAPIを利用できるので、ぜひマスターしてください。
今回は、WindowsAPIのタイマー処理を私の完成されたプログラムで体験してください。
セルの背景色をプログラムで変更する
Office TANAKA - Excel VBA講座:セルの操作[背景色の設定]
Range("B3").Interior.Color = RGB(0, 0, 255) '青色に設定します
まあ、この辺りは定石です。セルからGetしてもOKです。その時の変数は、長整数型(Long)を使います。
ExcelのマクロやVBAを利用すると効率の良いデータ管理をすることができます。
VBAを使って、データを保存したり、取得したりする方法を学びましょう。
拡張機能
テーブルパネルは、スタッフのスマートフォンにも表示可能です。
後日、プログラムが完成しましたら本ページからダウンロードできるように公開いたします。しばらくお待ちください。