「StiLL」デザイン情報146 StiLLコマンド--入力漏れを防ぐためのエラーチェックの作り方(StiLLボタン編) | ||||||||||||||||||||||||||||||||||||||
■ 登録画面などで必ず入力しなければならない項目がある場合、登録処理のプログラムの前にエラーチェックのプログラムを組み込んでおくと、ユーザーの入力漏れを未然に防ぐことができます。 | ■ StiLLボタン「メッセージボックス (MakeBtMessage)」の[セル参照指定]を使用することで、未入力の項目ごとに違うメッセージ内容を表示することができます。 | ■ 必須項目のチェック以外にも文字数のチェックやデータ型のチェック等々、数式を工夫してチェックすることができます。 | ||||||||||||||||||||||||||||||||||||
対応Ver. :StiLL-X
V1.0以降 対応種類:StiLL Dev・Pro・Std |
対応Ver. :StiLL-X
V1.0以降 対応種類:StiLL Dev・Pro・Std |
対応Ver. :StiLL-X
V1.0以降 対応種類:StiLL Dev・Pro・Std |
||||||||||||||||||||||||||||||||||||
■ 今回の内容 | ||||||||||||||||||||||||||||||||||||||
登録画面などで必ず入力しなければならない項目がある場合、 | ||||||||||||||||||||||||||||||||||||||
登録処理のプログラムの前にエラーチェックのプログラムを組み込んでおくと、 | ||||||||||||||||||||||||||||||||||||||
ユーザーの入力漏れを未然に防ぐことができます。 | ||||||||||||||||||||||||||||||||||||||
システムテンプレートの「Excel入力検索削除」の中には、 | ||||||||||||||||||||||||||||||||||||||
どの項目が未入力でも同じ内容のメッセージを表示するサンプルプログラムがありますが、 | ||||||||||||||||||||||||||||||||||||||
今回はStiLLボタンのみでも未入力の項目ごとに | ||||||||||||||||||||||||||||||||||||||
違うメッセージ内容を表示する応用的な方法をご紹介します。 | ||||||||||||||||||||||||||||||||||||||
システムテンプレート「Excel入力検索削除」についての詳細は以下のバックナンバーをご覧ください | ||||||||||||||||||||||||||||||||||||||
「StiLL」デザイン情報078 「StiLL-]」とは! -21 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
■ 作成方法 | ||||||||||||||||||||||||||||||||||||||
今回は既に作成済みの登録処理の前に、入力漏れを防ぐためのエラーチェックのプログラムを追加する手順を例にご紹介します。 | ||||||||||||||||||||||||||||||||||||||
下の画面の項目のうち、「商品コード」、「商品名」、「メーカー名」、「単価」、「原価」に | ||||||||||||||||||||||||||||||||||||||
入力漏れを防ぐためのエラーチェックを加え、未入力の場合にはエラーメッセージを表示するようにします。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
1) | 入力の有無を判断する数式を用意 | |||||||||||||||||||||||||||||||||||||
入力の有無を判断する数式を、各項目ごとに縦に並べて用意します。 | ||||||||||||||||||||||||||||||||||||||
IF関数を使い、各項目ごとに入力がある場合は「〇」、ない場合は「×」が表示されるような数式にします。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
2) | エラーの場合に表示するメッセージ内容を用意 | |||||||||||||||||||||||||||||||||||||
前の手順で用意した各項目の数式の右のセルに、エラーの場合に表示するメッセージ内容を用意します。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
3) | StiLLボタンで[セル参照指定]するセルを用意 | |||||||||||||||||||||||||||||||||||||
後の手順で作成するStiLLボタン「メッセージボックス (MakeBtMessage)」と | ||||||||||||||||||||||||||||||||||||||
「条件分岐実行 (MakeBtPushIf)」で[セル参照指定]するセルを先に用意します。 | ||||||||||||||||||||||||||||||||||||||
そのセルの数式は、エラーがある場合はエラーメッセージ内容を、ない場合には空白になるようにします。 | ||||||||||||||||||||||||||||||||||||||
VLOOKUP関数を使い、リスト内で「×」の項目のエラーメッセージ内容を1つ表示させます。 | ||||||||||||||||||||||||||||||||||||||
さらにIFERROR関数を使い、「×」が1つもない場合は空白になるようにします。 | ||||||||||||||||||||||||||||||||||||||
(IFERROR関数はExcel2007で追加された関数ですので、それ以前のバージョンをお使いの方はISERROR関数をお使いください) | ||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||
4) | StiLLボタン「メッセージボックス (MakeBtMessage)」を用意 | |||||||||||||||||||||||||||||||||||||
StiLLボタン「メッセージボックス (MakeBtMessage)」を用意します。 | ||||||||||||||||||||||||||||||||||||||
メッセージ内容は[セル参照指定]を選択し、前の手順で用意したセルを参照するよう指定します。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
5) | StiLLボタン「条件分岐実行 (MakeBtPushIf)」を用意 | |||||||||||||||||||||||||||||||||||||
StiLLボタン「条件分岐実行 (MakeBtPushIf)」を用意します。 | ||||||||||||||||||||||||||||||||||||||
ボタンテンプレートの開発用タブの中には既に「条件分岐実行 (MakeBtPushIf)」の機能が | ||||||||||||||||||||||||||||||||||||||
割り当てられているひし形のボタンもあります。 | ||||||||||||||||||||||||||||||||||||||
[セル値から分岐]を選択し、2つ前の手順で用意したセルを参照するよう指定します。 | ||||||||||||||||||||||||||||||||||||||
あとはそのセルが空白の時は登録処理に進み、空白以外は前の手順で用意した | ||||||||||||||||||||||||||||||||||||||
メッセージボックスを表示するボタンを押すようにします。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
6) | プログラム完成 | |||||||||||||||||||||||||||||||||||||
前の手順でプログラムは完成ですが、矢印やコメントなどを入れると見やすくなります。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
7) | 完成したプログラムを入力画面シートのデータ登録ボタンに設定 | |||||||||||||||||||||||||||||||||||||
入力画面シートのデータ登録ボタンに完成した「入力チェック」ボタンを設定してください。 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
■ ご参考までに | ||||||||||||||||||||||||||||||||||||||
必須項目のチェック以外にも | ||||||||||||||||||||||||||||||||||||||
・文字数のチェック(6文字以上8文字以内 等) | ||||||||||||||||||||||||||||||||||||||
・データ型のチェック(単価の欄に数字以外の文字が入っていないか 等) | ||||||||||||||||||||||||||||||||||||||
等々、数式を工夫してチェックすることができます。 | ||||||||||||||||||||||||||||||||||||||
※Excelの「データの入力規則」でも入力時のチェックを行うことができますが、 | ||||||||||||||||||||||||||||||||||||||
セルのコピー&ペーストをした場合には「データの入力規則」が機能しませんので、 | ||||||||||||||||||||||||||||||||||||||
数式でのチェックも行うようにするとより確実です。 | ||||||||||||||||||||||||||||||||||||||
例1)単価が0より大きい数字以外の場合はエラーとしたい場合 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
例2)商品名が20文字を超える場合と未入力の場合はエラーとしたい場合 | ||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||
(各ボタンの設定内容の詳細はStiLLヘルプをご確認ください) | ||||||||||||||||||||||||||||||||||||||
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます |