AW: Zellen korrekt füllen via Userform
24.02.2019 16:49:50
Werner
Hallo Rizzo,
1. auswählen des Startdatums aus der Userform:
Private Sub cmdÜbernehmen_Click()
Dim raFund As Range, loStart As Long, loEnd As Long
Dim loZeile As Long, strKürzel As String
Set raFund = Rows(39).Find(what:=CDate(Me.txtDatum1), LookIn:=xlFormulas, lookat:=xlWhole)
If Not raFund Is Nothing Then
loStart = raFund.Column
End If
Set raFund = Rows(39).Find(what:=CDate(Me.txtDatum2), LookIn:=xlFormulas, lookat:=xlWhole)
If Not raFund Is Nothing Then
loEnd = raFund.Column
End If
Set raFund = Columns(3).Find(what:=Me.cboName, LookIn:=xlValues, lookat:=xlPart)
If Not raFund Is Nothing Then
loZeile = raFund.Row
End If
Select Case Me.cboAktion.Value
Case "Urlaubverplant, halber Tag"
strKürzel = "UH"
Case "Urlaubverplant, ganzer Tag"
strKürzel = "U"
Case "Arbeiten, halber Tag"
strKürzel = "AH"
Case "Arbeiten, ganzer Tag"
strKürzel = "A"
Case "Krankheit, halber Tag"
strKürzel = "KH"
Case "Krankheit, ganzer Tag"
strKürzel = "K"
Case Else
End Select
If Me.txtKommentar "" Then
Cells(loZeile, loStart).ClearComments
Cells(loZeile, loStart).AddComment Me.txtKommentar.Value
End If
Range(Cells(loZeile, loStart), Cells(loZeile, loEnd)) = strKürzel
Cells(loZeile, loStart).Select
Set raFund = Nothing
End Sub
2. auswählen des aktuellen Datums bei Start der Mappe
Private Sub Workbook_Open()
Dim raFund As Range
Worksheets("Personalplaner").Activate
Set raFund = Rows(39).Find(what:=Date, LookIn:=xlFormulas, lookat:=xlWhole)
If Not raFund Is Nothing Then
Cells(8, raFund.Column).Select
End If
Set raFund = Nothing
End Sub
Dieser Code gehört ins Codemodul von "DieseArbeitsmappe"
Im VBA-Projekt Explorer im Verzeichnisbaum links Doppelklick auf "DieseArbeitsmappe" und den Code rechts ins Codefenster kopieren.
Gruß Werner