Zelle ausfüllen wenn Mitarbeiter auf Krankenstand
20.11.2019 10:24:38
Daniela
ich weiß das ist vielleicht bissche viel verlangt, aber da ich mit VBA angefangen habe und nicht wirklich weiß wie ich das Thema angehen soll, wende ich mich an euch.
Wir haben einen Dienstplan in Excel und ich soll diesen verbessern und das mit Makros.
Wir haben von Zeile D6 - U382 die Mitarbeiter, da möchte ich folgendes einbauen:
Sobald jemand auf Krankenstand ist klickt man auf AH3 da steht ganz dick: SICK LEAVE E-Mail: Excel generiert im Outlook eine Mail mit den Informationen und dann klickt man auf Senden und er schickt sie ab und speichert auch den Namen in den String "sick" ein. Soweit funktioniert alles auch schon, der Eintrag wird für den richtigen Namen auf E6 - J6(testweise für einen Part des Teams auch hinterlegt), nur weiß ich gerade nicht weiter, wie ich das mit dem Datum verknüpfen kann, heißt z.B ist der Kollege am 22.November.2020 krank, man drückt auf AH3 schickt die Mail raus und dann soll "SL" auch für die Krankgemeldete Person am 22.11.2020 eingetragen werden. Testweise habe ich unseren Dienstplan(natürlich ohne Firmen interne Infos ) angehängt und bin euch sehr dankbar für jede Unterstützung!
Code der bis jetzt erzeugt wurde:
Dim sick As String, feed As String, rating As String
Dim neueZeile As Long
Dim mittelwert As Long
Sub Worksheet_SelectionChange(ByVal Target As Range)
sick = ""
If Target.Column = 34 Then
'Target.Column = 34 Then
Dim objOutlook As Object
Dim objMail As Object
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
sick = InputBox("Who is on sick leave")
With objMail
.GetInspector
.To = "test@test.at " &
.Subject = "Sick leave " & sick
.HTMLBody = " _
_
_
Dear all" & "
" & "
" _
& sick & " " & "is on sick leave." & "
" & "
" _
& "Thank you _
_
_
very much!" & .HTMLBody
' "Dear all," & "
" & "
" & sick & " is on Sick leave" & "
" & "
" _
_
_
& "Thank you very much!" & .HTMLBody
.Display
End With
End If
If sick = "test" Then
Range("E6") = "SL"
ElseIf sick = "test2" Then
Range("F6") = "SL"
ElseIf sick = "test3" Then
Range("G6") = "SL"
ElseIf sick = "test4" Then
Range("H6") = "SL"
ElseIf sick = "test5" Then
Range("I6") = "SL"
ElseIf sick = "test6" Then
Range("J6") = "SL"
End If
End Sub
Fileupload: https://www.herber.de/bbs/user/133318.xlsm
Liebe Grüße Dani