「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) アイエルアイ総合研究所 無断転載を禁じます