2017-03-09 11 views
1

DateTimePickerから金曜日まで7日間を追加する必要があります。ここに私のコードです。金曜日に7日間追加する?

金曜日の金曜日が7日であるため、ループが作成されることがわかりました。その後、それ自体を繰り返しますが、最初の金曜日の後にそれを繰り返すのを止めるにはどうしたらいいですか?

 If Me.DateTimePicker1.Value.DayOfWeek = DayOfWeek.Saturday _ 
     Or Me.DateTimePicker1.Value.DayOfWeek = DayOfWeek.Sunday Then 
      If Me.DateTimePicker1.Value.DayOfWeek = DayOfWeek.Saturday Then 
       Me.DateTimePicker1.Value = Me.DateTimePicker1.Value.AddDays(-1) 
      Else 
       Me.DateTimePicker1.Value = Me.DateTimePicker1.Value.AddDays(-2) 
      End If 
     End If 
     If Me.DateTimePicker1.Value.DayOfWeek = DayOfWeek.Friday Then 
      Me.DateTimePicker1.Value = Me.DateTimePicker1.Value.AddDays(7) 
     End If 
    End Sub 
End Class 
+4

私はそれが変更イベントにあると思いますか? – Plutonix

+0

ええ、そうです。あなたは私に多くの助けをしました。私はプログラミングの初心者で、このサイトには、ありがとう! – taby

答えて

1

グローバル状態変数を作成します。これで、あなたのイベントが二回発射する必要がありますので

Sub dateTimePicker1Change... 
    if not busy then 

      busy = True 
      ' Your logic here 
      busy = False 
    End if 
End Sub 

が、ときに:あなたのサブで

Dim busy as Boolean 
busy = False 

を、あなたはこのような何かをが最初のイベントを処理しているときにもう一度起動された場合は、の状態をTrueに設定しました。すぐに2番目のイベント処理が返されますさらなるトリガー)。

+3

1980年代が呼ばれました。彼らは彼らの 'GoTo'を元気にしたい。 – Plutonix

+0

それはまだ基本です;) – Psi

+0

'もしNot busy do'の代わりに' GoTo'を使うのはなぜですか? –

関連する問題