| 今村 誠さんこんにちは 有難うございます。 やっと、おっしゃてる事の意味がわかりました。
elseifの条件式で引っかかっていたのですね!! コマンドエラーのポップアップでは12行目と出ているし、 [締日]=31の時のエラーなのでそちらばかり考えていました。 実際は17行目でエラーになっていたんですね。
if文の条件分岐のいい勉強になりました。
elseifの条件を2分して対応させることにしました。
[締日]については実際のところ20日,25日,月末,なし しか今のところないので、そのうち時間を見て考えます。
5: 手続き定義開始 t入金日::入力後(...) 6: 代入 &入金日=#日時値(&編集文字列) 7: 確認 "&入金日="+#日時文字列(&入金日,9,1,2) 8: 確認 "#月数加算([年度開始日],1,1)="+... 9: 確認 "#月末(#月数加算([年度開始日],1,1))="+... 10: 11: * if (&入金日≠"" .and [締日]≧31) 12: if (&入金日≠"" .and [締日]≧31 .and ( &入金日<#月数加算([年度開始日],1,1) .or &入金日>#月末(#月数加算([年度開始日],1,1)))) 13: * if ( &入金日<#月数加算([年度開始日],1,1) .or &入金日>#月末(#月数加算([年度開始日],1,1))) 14: メッセージボックス "5入金日(締日月末他)" , "入金日の日付が5月度の範囲外です。" , アイコン=E, ボタン指定=1 15: &入力継続=0 16: * end 17: else if (&入金日≠"" .and [締日]<31) 18: if( .not &入金日>#日時値生成( #年( #月数加算( [年度開始日], 0 , 1 )) , #月( #月数加算( [年度開始日], 0 , 1 )) , [締日] )\ 19: .and &入金日≦#日時値生成( #年( #月数加算( [年度開始日], 1 , 1 )) , #月( #月数加算( [年度開始日], 1 , 1 )) , [締日] )) 20: メッセージボックス "5入金日(締日月末他以外)" , "入金日の日付が5月度の範囲外です。" , アイコン=E, ボタン指定=1 21: &入力継続=0 22: end 23: end 24: 確認 "t入金日 入力後イベント終了" 25: 手続き定義終了
|