仕事のお手伝いで使うVBAのプロシャージャの修正をしています。
変更があったときになるべく修正をしなくていいようなものを模索しています。また,同時に,後で見たとき
に何をやってるのか分かるような視認生を有効にできるように心がけていますが,両立させるのは,結構手間
がかかります。
今まで,先行受付については,期間については,手動で加減していましたが,期間についても,プロシャージ
ャに入れることにしました。
下記のようなものを考えました。
If DateValue(sousin) < DateValue("2030/01/22") Then 'ハワイ支部会員先行受付
If syubetu = "会員" And InStr(sibu, "ハワイ") > 0 Then
'何もしない
Else
objmailItem.Move objFolder_kikangai
End If
End If
このように書いていました。必要なのは,先行受付の期間では,該当しないメールを期間外のホルダーに移動
するのですが,先行受付に該当するメールには,何もしなくて,それ以外を期間外ホルダーに移すと考えた方
がわかりやすいです。(最も,私にとってはです・・・・。)
if の部分では,なにもしなくて,else で該当しないメールの処理をする,という記述ですが,この方法だ
と,処理が増えていくことを考えると下記のように NOT を使う記述がいいとのことでした。
If DateValue(sousin) < DateValue("2030/01/22") Then 'ハワイ支部会員先行受付
If Not(syubetu = "会員" And InStr(sibu, "ハワイ") > 0) Then
objmailItem.Move objFolder_kikangai
End If
End If
該当する条件を考えて,それに NOT をつけて,(該当しない条件にする)この方が,いいかもですね。