Guten Tag zusammen,
ich hätte da mal eine Frage. Zwar geht es darum das ich gerne mit einem VBA Code Feiertage und Wochenenden überspringen möchte
So sieht es zur Zeit aus möchte aber das es so Aussieht
Vielleicht kann mir ja jemand von euch Helfen. Denn Urlaub trage ich über eine UserForm ein die Formel:
Private Sub ButtonSpeichern_Click()
Dim sDatum As Variant
Dim eDatum As Variant
Dim Kollege As Range
Dim Wks
Dim i As Long
Dim neueZeile As Long
If ComboBoxVorundNachname = "" Or TextBoxAbwesendvon.Value = "" Or TextBoxAbwesendbis = "" Or ComboBoxAbwesend.Value = "" Then
MsgBox "Bitte füllen sie alle Felder aus!"
Exit Sub
End If
If ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 1) = "Schicht A" Then Set Wks = Tabelle2
If ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 1) = "Schicht B" Then Set Wks = Tabelle4
If ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 1) = "Schicht C" Then Set Wks = Tabelle6
With Wks
Set Kollege = .Columns(3).Find(ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 0), LookIn:=xlValues)
If IsNumeric(TextBoxAbwesendvon) Then
sDatum = Application.Match(CLng(CDate(TextBoxAbwesendvon)), .Rows(6), 0)
Else
MsgBox "Bitte Datum eintragen"
TextBoxAbwesendvon = ""
TextBoxAbwesendvon.SetFocus
Exit Sub
End If
If IsNumeric(TextBoxAbwesendbis) Then
eDatum = Application.Match(CLng(CDate(TextBoxAbwesendbis)), .Rows(6), 0)
Else
MsgBox "Bitte Datum eintragen"
TextBoxAbwesendbis = ""
TextBoxAbwesendbis.SetFocus
Exit Sub
End If
If Not Kollege Is Nothing Then
For i = sDatum To eDatum
.Cells(Kollege.Row, i) = ComboBoxAbwesend
Next i
End If
End With
Unload Me
End Sub
In einer Weitere Tabelle (Tabelle3) sind die Feiertage eingetragen:
Würde mich um eine Lösung freuen :)
ich hätte da mal eine Frage. Zwar geht es darum das ich gerne mit einem VBA Code Feiertage und Wochenenden überspringen möchte
So sieht es zur Zeit aus möchte aber das es so Aussieht
Vielleicht kann mir ja jemand von euch Helfen. Denn Urlaub trage ich über eine UserForm ein die Formel:
Private Sub ButtonSpeichern_Click()
Dim sDatum As Variant
Dim eDatum As Variant
Dim Kollege As Range
Dim Wks
Dim i As Long
Dim neueZeile As Long
If ComboBoxVorundNachname = "" Or TextBoxAbwesendvon.Value = "" Or TextBoxAbwesendbis = "" Or ComboBoxAbwesend.Value = "" Then
MsgBox "Bitte füllen sie alle Felder aus!"
Exit Sub
End If
If ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 1) = "Schicht A" Then Set Wks = Tabelle2
If ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 1) = "Schicht B" Then Set Wks = Tabelle4
If ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 1) = "Schicht C" Then Set Wks = Tabelle6
With Wks
Set Kollege = .Columns(3).Find(ComboBoxVorundNachname.List(ComboBoxVorundNachname.ListIndex, 0), LookIn:=xlValues)
If IsNumeric(TextBoxAbwesendvon) Then
sDatum = Application.Match(CLng(CDate(TextBoxAbwesendvon)), .Rows(6), 0)
Else
MsgBox "Bitte Datum eintragen"
TextBoxAbwesendvon = ""
TextBoxAbwesendvon.SetFocus
Exit Sub
End If
If IsNumeric(TextBoxAbwesendbis) Then
eDatum = Application.Match(CLng(CDate(TextBoxAbwesendbis)), .Rows(6), 0)
Else
MsgBox "Bitte Datum eintragen"
TextBoxAbwesendbis = ""
TextBoxAbwesendbis.SetFocus
Exit Sub
End If
If Not Kollege Is Nothing Then
For i = sDatum To eDatum
.Cells(Kollege.Row, i) = ComboBoxAbwesend
Next i
End If
End With
Unload Me
End Sub
In einer Weitere Tabelle (Tabelle3) sind die Feiertage eingetragen:
Würde mich um eine Lösung freuen :)