Thema Datum  Von Nutzer Rating
Antwort
Rot Mail Versand Worksheet Change
13.03.2021 17:03:54 Andy
NotSolved
13.03.2021 19:51:27 Gast73883
NotSolved
13.03.2021 20:04:49 Gast68919
NotSolved
14.03.2021 11:34:01 Gast8511
NotSolved

Ansicht des Beitrags:
Von:
Andy
Datum:
13.03.2021 17:03:54
Views:
835
Rating: Antwort:
  Ja
Thema:
Mail Versand Worksheet Change

Hallöchen,

vielleicht kann mir jemand helfen... ;-)  Ich habe ein Makro, das prüft, ob eine Zelle vom Wert Closed auf Ongoing oder Open gesetzt wurde. Wenn bereits Closed in der Zelle eingetragen wurde UND auf Open oder Ongoing zurückgesetzt wird, gibt es eine warnmeldung per MsgBox.

Jetzt soll genau bei diesem Ereignis eine Mail versendet werden. Allerdings wird bei meinem Makro immer eine Mail versendet, wenn der Zellwert geändert wird (egal ob closed, open oder ongoing). Weiß jemand, was ich im Makro falsch mache.... ;-) Vielen Dank vorab!  

 

Private Sub Worksheet_Change(ByVal Target As Range)
Dim objOutlook As Object
Dim iclick As Integer
Dim objMail As Object
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
   
    If Not Application.Intersect(Range("Q10:Q1000"), Range(Target.Address)) Is Nothing Then _
        If Not mobjCell Is Nothing Then If Target.Value = "OPEN" Or Target.Value = "ONGOING" Then _
        msgbox "You have been reset the status in Cell " & "from CLOSED to " & Target.Value & "! This can affect the whole  xxx Group Closing Process!" _
        & vbCrLf & vbCrLf & "JGM Group Accounting will be informed automatically by e-mail now." & vbCrLf & vbCrLf & "Please contact Ms. xxxx or Mr. xxxx", vbOKOnly, "!!Critical change during closing process!!"

        With objMail
        .To = "xxxx@xxx.de"
        .Subject = "!!Financial closing alert!!"
        .Body = "Financial closing alert " & Target.Address & Target.Value & "  has been reset from closed status"
        .Send
        End With

End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Range("Q10:Q1000"), Range(Target.Address)) Is Nothing Then
        If Target.Cells(1, 1).Value = "CLOSED" Then
            Set mobjCell = Target
        Else
            Set mobjCell = Nothing
        End If
    End If
End Sub


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Mail Versand Worksheet Change
13.03.2021 17:03:54 Andy
NotSolved
13.03.2021 19:51:27 Gast73883
NotSolved
13.03.2021 20:04:49 Gast68919
NotSolved
14.03.2021 11:34:01 Gast8511
NotSolved