Office: (Office 2007) E-Mail Benachrichtigung nach Änderung an einer Excel-Datei

Helfe beim Thema E-Mail Benachrichtigung nach Änderung an einer Excel-Datei in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Danke für die Antwort, habe den Code eingefügt und er funktioniert sehr gut. Danke nochmals. Eine Sache gefällt mir aber noch nicht. Zwar:... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von golo120, 27. November 2007.

  1. E-Mail Benachrichtigung nach Änderung an einer Excel-Datei


    Hallo

    Danke für die Antwort, habe den Code eingefügt und er funktioniert sehr gut. Danke nochmals.

    Eine Sache gefällt mir aber noch nicht.
    Zwar: Jetzt sendet Excel eine Benachrichtigung, sobald man auf das "X" klickt. Dies bedeutet beim schliessen.

    Mein Wunsch wäre es aber, dass nur dann eine Benachrichtigung rausgeht, wenn auch erwas geändert wurde. D.h. nur beim Speichern und anschliessendem Schliessen (nicht bei jedem zw.Speichern)

    Ist dies machbar?

    ausserdem wäre noch hilfreich, wenn der Pfad als ein Hyperlink angezeigt wird.

    Ich bedanke mich ganz herzlich für eure Hilfe.

    Grüsse

    Nebi
     
  2. Moin, Nebi,

    in einer globalen Variablen den Zustand speichern (wird sowohl das Change-Ereignis für direkte Eingaben als auch das Calculate-Ereignis für Formelberechnungen auf True gesetzt), diese beim Schließen auswerten und den Versand nur bei Zutreffen auslösen.

    Den Pfad bekommst Du per ThisWorkbook.Path (ohne das letzte Trennzeichen).
     
  3. Hallo

    Danke für die rasche Antwort.

    Leider verstehe ich diese nicht ganz.
    Können Sie es anhand einem Script zeigen.

    Hier der aktuelle Script

    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim OutApp As Object
    Dim OutMail As Object
    Dim WshShell As Object
    Dim strto$, strcc$, strbcc$
    Dim strsub$, strbody$
    Dim strDateiPfad$
    Dim iImportance%

    On Error Resume Next

    Set OutApp = CreateObject("Outlook.Application")

    strDateiPfad = thisworkbook.FullName

    OutApp.Session.Logon
    Set OutMail = OutApp.CreateItem(0)

    'Hier deine Emailadresse eingeben
    strto = "meine.mail@domain.ch"

    'Hier kann jemand in Cc eingetragen werden
    strcc = ""

    'Hier kann jemand in Bcc eingetragen werden
    strbcc = ""
    iImportance = 2
    strsub = "Änderung in 'Meldung von Crew'"
    strbody = "Die Datei 'Meldungen von Crew' wurde geändert, Änderungen sind unter folgendem Pfad zu finden:" _
    & vbCrLf & vbCrLf & strDateiPfad _
    & vbCrLf & vbCrLf _
    & "Änderung erfolgte am: " & Date & ", um " & Time & " Uhr" _

    With OutMail

    .To = strto
    .CC = strcc
    .BCC = strbcc
    .Importance = iImportance
    .Subject = strsub
    .Body = strbody
    .Send

    End With

    Set OutMail = Nothing
    Set OutApp = Nothing

    End Sub
     
  4. E-Mail Benachrichtigung nach Änderung an einer Excel-Datei

    Hallo,
    ist es auch möglich, dass eine Nachricht nach einer Änderung an eine bestimmte Person verschickt werden soll, aber keine Nachricht verschickt werden soll, wenn die Empfängerperson selbst eine Veränderung vornimmt?

    Gruß
     
  5. Hallo zusammen,

    ich bin über google Suche auf dieses Forum gestoßen und habe mir gerade sehr interessiert das ganze hier durchgelesen. Ich suche auch eine Funktion über eine Benachrichtigung bei einer Änderung von einer Excel Tabelle die von verschiedenen Personen benutzt wird. Das habe ich jetzt auch mit den hier angebotenen Scripten gut hin bekommen. Jedoch kommt es auch oft vor dass Kollegen nur die Liste öffnen um nachzuschauen und gar nichts ändern. In diesem Fall würde ich auch immer eine E-Mail bekommen. Die Änderungen sind sehr eingeschränkt. Das heißt es werden nur "1" in bestimmte Zellen geschrieben oder diese wieder gelöscht. Wäre es daher möglich das Script so zu erweitern nur eine E-Mail zu erhalten wenn eine "1" gesetzt oder eine "1" gelöscht wurde? Genial wäre natürlich noch wenn in einer Zeile die "1" gelöscht wurde, dass hier dann noch in der E-Mail der Inhalt von Spalte A und B erscheint. Hat jemand eine Idee wie ich dies noch hier bei dem Script ergänzen kann ?

    Vielen Dank.
     
    mdcbauer, 11. Januar 2011
    #20
  6. Hallo Zusammen, bin neu hier, da ich eigentlich nur durch Zufall bei Google auf dieses Forum aufmerksam geworden bin...

    Das in diesem Thread angesprochende Problem ist fast exakt das gleiche was ich habe. Der erste Code von Schmali passt eigentlich wie die Faust aufs Auge - danke dafür!

    Habe aber 2-3 kleine Fragen dazu, da ich mich mit VBA leider nicht wirklich auskenne... Und zwar:
    1. Wie kann ich verhindern, dass die Datei in der Mail angehänt wird?
    2. Wie kann ich die Überschrift und den Textinhalt verändern. Bei den anderen Codes ist das kein Problem, aber bei dem hier weiß ich nicht, wo ich entsprechende Befehle einfügen muss.
    3. Wenn ich auf Speichern drücke, sendet er automatisch eine Mail, soweit so gut. Aber er schließt dann auch automatisch das Worksheet. Wie kann ich das verhindern?

    Vielen Dank für die Hilfe!


     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  7. Hoi,

    nachdem ich lange nicht mehr aktiv hier unterwegs war, hat mich die Tage eine Mail erreicht zu diesem Thema. Da will ich Dich natürlich nicht mit Deinem Problem alleine lassen.

    Unten findest Du einen Codeschnipsel, der genau das tun sollte, was Du möchtest. Wenn nicht, einfach nochmal melden *wink.gif*

    Hinweis: Ich habe hierfür Office 2007 unter Windows 7 verwendet. Solltest Du ein anderes Office oder Win XP verwenden, so ist der Pfad unter "Shell...." anzupassen, da sonst Outlook nicht geöffnet wird.

    Zu 1: In nachfolgendem Code werden generell keine Anhänge mit verschickt.
    Zu 2: Findest Du in nachfolgendem Beispiel und musst es nur austauschen
    Zu 3: Da es unter "Workbook_BeforeSave..." in "DieseArbeitsmappe" hinterlegt ist, sollte es die Datei definitiv nicht schliessen, sondern nur speichern. So ist es zumindestens bei mir in den Tests gelaufen.

    Der Code öffnet Outlook wenn es noch nicht offen ist. Wenn es geöffnet ist, wird das Fenster aktualisiert (ist zwar Blödsinn aber was solls) und wenn es minimiert ist, dann wird es maximiert (vll. auch nicht unbedingt gewünscht).

    Füge den nachfolgenden Code in VBA unter "DieseArbeitsmappe" ein:

    Code:
    Sollten Fragen sein, so bin ich hier zu finden *cool.gif*

    Greetz

    Schmali

    EDIT: Was mir jetzt gerade erst aufällt: Jedesmal wenn der Code ausgeführt wird, bzw. die Datei gespeichert wird, erstellt er eine neue Instanz von Outlook, so das es bei mir 10 mal geöffnet war. Das nur am Rande und von wegen, das er es maximiert, wenn minimiert....
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  8. E-Mail Benachrichtigung nach Änderung an einer Excel-Datei

    Hey!

    Vielen Dank erstmal!
    Das hilft mir schon enorm weiter! *Smilie

    Habe bisher noch 2 kleine Fragen:
    1. In meinen alten Worksheets funktioniert das ohne probleme. Aber da wir letztens auf Excel 2010 umgestellt haben, habe ich dort jetzt ein kleines Problem. Sobald ich ein neue Excel-Datei öffne, VBA öffne und den Text einfüge, sagt er mir, dass er es nicht Speichern kann, weil die Datei nicht macro-enabled ist. Wenn ich - wie bei google gefunden - auf File -> Options -> TrustCenter -> macros gehe, diese dann aktiviere, löst es leider nicht das Problem: Die Datei wird nicht gespeichert mit den Markos.


    2. Wüsstst du, wo ich eventuell noch die Veränderung reinbringe, dass er mir automatisch in der Mail sagt, was an der Excel-Datei geändert wurde? Was echt klasse wäre, wenn er mir die entsprechende Zelle bzw. Zellen direkt in die Mail packen würde...


    Vielen Dank für deine Hilfe!
     
  9. Moin,

    zu Deiner ersten Frage kann ich erstmal nur vermuten, das es sich wie bei 2007 verhält und Du die Datei als .xlsm speichern musst. Genau kann ich das nicht sagen, da ich selbst (noch) kein 2010 bei mir installiert hab.

    Dein zweites Anliegen lässt sich durchaus bewerkstelligen es kommt aber drauf an, wieviel Änderungen das betreffen würde. Zwei Möglichkeiten fallen wir auf Anhieb ein:

    Zum einen wäre da "Worksheet_SelectionChange(ByVal Target as Range). Diese Variante hat allerdings den Nachteil, das nach jeder Änderung in einem Bereich oder auch im ganzen Blatt der dahinterliegt code durchlaufen wird. Das kann ganz schön nervig werden. Sollte im Code erkannt werden, das sich was geändert hat, so kann man das in eine Variable packen und beim Speichern dann entsprechen in den Mailbody packen.

    Noch eine Möglichkeit (weniger elegant, dafür vll. praktischer - kommt auf die Anzahl der Tabellenblätter an) wäre es, beim öffnen ein Tabellenblatt zu kopieren, versteckt zu lassen und beim speichern dieses als Vergleich zu nutzen. Und dann einmal die Änderungen in den Body schreiben. Dazu müsste dann keine permanente Überwachung laufen.

    Sicher haben die wirklichen Experten hier noch bessere Vorschläge, was die Protokollierung von Änderungen in einer Datei angeht, dazu vll. einfach mal die Suchfunktion benutzen. Möglicherweise kann man was kombinieren.

    Sehr hilfreich wäre sicherlich, wenn Du mal eine Beispieldatei hochladen würdest, mit der man spielen kann.

    So long.

    Greetz

    Schmali
     
  10. Vielen Dank für deine weiterführende Hilfe.
    Nachdem ich jetzt etwas gegoogelt habe, habe ich gefunden, dass andere auch deinenzweiten Ansatz gewählt haben.

    wie ich das aber in das von dir geschriebene Programm einbinde weiß ich leider absolut nicht.
    Mit dem Beispiel kann ich dir leider auch nicht viel helfen. Im Prinzip ists sind es nur mehrere Worksheets, die auf mehrere Produktgruppen hindeuten. auf jedem Arbeitsblatt gibt es eine bestimmt Spalte die mich interessiert. Im Prinzip soll er mir in der Mail (oder der anzuhängenden Logfile) die Zelle der entsprechenden Spalte des entsprechenden Arbeitsblattes ausgeben, welche geändert wurde (Klappt das auch, wenn 2 oder mehr gleichzeitig geändert werden?).

    Vielen Dank weiterhin für deine Hilfe :-)
     
  11. Hoi,

    das ist genau das worauf ich hinaus wollte. Es können auch 1000 Änderungen und mehr protokolliert und in eine Mail gepackt werden. Dementsprechend viel steht halt in der Mail dann drin.

    Geb mir mal noch kurz ne Info, um wieviel Tabellenblätter (Produktgruppen) es sich in Deinem Fall ungefähr handelt. Dies ist nicht ganz uninteressant, da es bei sehr vielen Blättern wieder anfängt Sinn zu machen das doch über Worksheet_SelectionChange zu erschlagen.

    Wenn ich die Info hab, bastel ich Dir ne Kleinigkeit, die Dir dann hoffentlich weiter hilft.

    Greetz

    Schmali
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  12. Also, die Daten kannst du dir ungefähr so vorstellen, dass es verschiedene Arbeitsmappen gibt, die nach Kategorien unterteilt sind. Z.B. Arbeitsblatt 1 = Getränke, Arbeitsblatt 2 = Vorspeisen, Arbeitsblatt 3 = Hauptspeisen etc.

    auf jedem Arbeitsblatt stehen nun alle produkte (in dem fall bspw. gerichte) die es in jeder kategorie gibt mit ihren infos. in einer spalte ist ein link zu einer pdf datei mit wichtigen Daten (z.B. hier das genaue Rezept). Jetzt kann es sein, dass der Koch die Rezepte alle paar Wochen/Monate abändert und die PDF verändert. der PDF-Name wird in der Excel-datei dann entsprechend dem neuen Datum geändert. (Natürlich kann es sein, dass dann direkt 2-3 pdf dateien vorm speichern geändert werden.)

    Nun bräuchte ich halt die entsprechenden Infos, welche pdf geändert oder sogar neu hinzugekommen ist. Die Datei muss nicht angehängt werden, weil ich mir die natürlich selbst runterziehen kann.


    1000 Danke für deine Hilfe.
    Wenn du noch fragen hast, frag bitte *Smilie
     
  13. E-Mail Benachrichtigung nach Änderung an einer Excel-Datei

    Hoi,

    ich hab da noch ein zwei Fragen bevor ich losleg...

    Du brauchst nur eine Info, wenn sich die PDF-Datei ändert?
    Steht der Pfad zur PDF immer in der selben Spalte oder gibt es Ausnahmen?

    Greetz

    Schmali
     
  14. 1. Ja genau, ich muss nur wissen, wenn der andere Nutzer die pdf aktualisiert bzw. neu hinzufügt.

    2. In einem Arbeitsblatt steht der Pfad/link zur pdf immer in der selben Spalten. Aber in den einzelnen Arbeitsblättern kann sich die Spalte ändern. Also z.b. bei den Vorspeisen ist die entsprechende Spalte K, bei den Hauptspeisen J , bei den Nachspeisen M etc.

    Danke :-)
     
  15. Was natürlich die nächste Frage aufwirft *Smilie

    Ist eine Spaltenüberschrift vorhanden und wenn ja, ist die in allen Arbeitsblättern gleich und wie lautet diese?

    Ich mach dann damit am Montag weiter *cool.gif*

    Greetz & schönes WE

    Schmali
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
Thema:

E-Mail Benachrichtigung nach Änderung an einer Excel-Datei

Die Seite wird geladen...
  1. E-Mail Benachrichtigung nach Änderung an einer Excel-Datei - Similar Threads - Mail Benachrichtigung Änderung

  2. Outlook Benachrichtigung erscheint permanent

    in Microsoft Outlook Hilfe
    Outlook Benachrichtigung erscheint permanent: Hallo zusammen, ich habe ein nervendes Problem. Mein Outlook signalisiert mir permanent "Sie haben x neue Mails" in einer nervenden Sprechblase die an Win95 erinnert. [ATTACH] Wie krieg ich...
  3. Microsoft Teams verschickt automatisch Benachrichtigungs-Mails

    in Microsoft Teams Hilfe
    Microsoft Teams verschickt automatisch Benachrichtigungs-Mails: Hallo Community, wir verwenden Microsoft-Teams in der Schule. Eine meiner Schülerinnen hat via Teams-Aufgabe ein Word-Dokument abgegeben. Ich habe dieses in der Desktop-App geöffnet und zur...
  4. E-Mail-Benachrichtigung

    in Microsoft Teams Hilfe
    E-Mail-Benachrichtigung: In den Einstellungen für die Benachrichtigungen kann ich die Option "E-Mail und Banner" nicht anwählen, da sie gar nicht erst erscheint. Ist das neu? Es gibt nur die Optionen "Banner und Feed" und...
  5. E-Mail-Benachrichtigungen

    in Microsoft Teams Hilfe
    E-Mail-Benachrichtigungen: Liebe Community, wir verwenden Teams für unsere Bildungseinrichtung. Schüler wie auch Lehrer wünschen die Benachrichtigung über neue Chat-Inhalte usw. und haben bei Benachrichtungen die Option...
  6. Benachrichtigung der Team-Mitglieder über neue Einträge in den Kanälen per Mail

    in Microsoft Teams Hilfe
    Benachrichtigung der Team-Mitglieder über neue Einträge in den Kanälen per Mail: Hallo in die Community, ich versuche nun schon eine ganze Weile in meinen verschiedenen Team-Zugängen eine Einstellung für mich als Benutzer hinzubekommen, die gewährleistet, dass ich per Mail...
  7. E-Mail Benachrichtigungen

    in Microsoft Teams Hilfe
    E-Mail Benachrichtigungen: Guten Tag, ich habe Teams an unserer Schule eingerichtet und habe jetzt ein vermutlich recht banales Problem. Die Schüler erhalten keine Banchrichtigung per Mail über neue Chatnachrichten,...
  8. Access 2011 E-Mail benachrichtigung

    in Microsoft Access Hilfe
    Access 2011 E-Mail benachrichtigung: Hallo an alle hab da mal de frage ist es möglich das ich mit access eine E-Mail benachrichtung einrichte. Diese soll so funktionieren das wenn zum beispiel etwas länger wie zehn tage ausgeliehen...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden