Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1724to1728
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zelle ausfüllen wenn Mitarbeiter auf Krankenstand

Zelle ausfüllen wenn Mitarbeiter auf Krankenstand
20.11.2019 10:24:38
Daniela
Hallo liebe Leute,
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

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle ausfüllen wenn Mitarbeiter auf Krankenstand
20.11.2019 10:38:49
Regina
Hi,
teste mal ao:
Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lng_zeile As Long
Dim lng_spalte As Long
Dim rng_finden 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 = "USER_SUPPORT_ALLIANZ_TECHNOLOGY_GMBH@allianz.at; " & "at-user-support- _
team-abs-int-ind@allianz.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 Set rng_finden = Range("4:4").Find(sick, lookat:=xlWhole) If Not rng_finden Is Nothing Then lng_spalte = rng_finden.Column Else MsgBox "MA gibst nicht" End If Set rng_finden = Range("B:B").Find(Date) If Not rng_finden Is Nothing Then lng_zeile = rng_finden.Row Else MsgBox "Datum gibst nicht" End If Cells(lng_zeile, lng_spalte) = "SL" End If End Sub

Der Code geht davon aus, dass "SL" immer für das aktuelle datum eingetragen wird.
Gruß
Regina
Anzeige
AW: Zelle ausfüllen wenn Mitarbeiter auf Krankenstand
20.11.2019 10:53:51
Daniela
Hi,
vielen vielen vielen Dank, das erste Stück ist mal geschafft.
Ich teste das jetzt wieder mit den internen Daten und geb dir nochmal Beschdeid!
Nochmals vielen Dank :)
LG Dani

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige