Termine aus Excel in Outlook übertragen ohne Doppelungen

  • Excel

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von FloFuchs.

    Termine aus Excel in Outlook übertragen ohne Doppelungen

    Hallo,

    ich habe für eine Excel Tabelle ein Makro, das dafür sorgt, dass Termine aus dieser Tabelle in Outlook generiert werden. Dies funktioniert super.

    ABER: Wenn ich in der Tabelle neue Daten eingebe und das Makro wieder drüber laufen lasse, dann werden auch die alten Einträge erneut in Outlook übernommen, so dass ich ständig Doppelungen habe. Wer kann mir helfen, dass eine Kontrolle stattfindet, ob der Termin schon eingetragen ist?

    Hier das Makro:

    Quellcode

    1. Sub Excel_Control_Termin_nach_Outlook()
    2. Dim OutApp As Object, apptOutApp As Object
    3. Range("K2").Select
    4. Do Until ActiveCell.Value = ""
    5. Set OutApp = CreateObject("Outlook.Application")
    6. Set apptOutApp = OutApp.CreateItem(1) 'olAppointmentItem)
    7. With apptOutApp
    8. .Start = Format(ActiveCell.Value, "dd.mm.yyyy hh:mm")
    9. .Subject = "Rechnung: " & ActiveWorkbook.Name & " kontrollieren"
    10. .Subject = ActiveCell.Offset(0, 1)
    11. .Body = ""
    12. .Location = "Büro"
    13. .Duration = "60"
    14. .ReminderMinutesBeforeStart = 15
    15. .ReminderPlaySound = True
    16. .ReminderSet = True
    17. .Save
    18. End With
    19. 'Nächste Zelle auswählen
    20. ActiveCell.Offset(1, 0).Select
    21. 'Variablen leeren,... sonst "kotzt" Outlook irgendwann mal
    22. Set apptOutApp = Nothing
    23. Set OutApp = Nothing
    24. Loop
    25. MsgBox "Super - Termine an Outlook übertragen!"
    26. End Sub



    Vielen Dank für Eure Hilfe!!!

    Carsten
    Hallo Carsten,

    ich würde Dir zu einer Hilfsspalte raten. In die Zellen würde ich nur eine 0 oder eine 1 reinschreiben.

    Die 0 würde ich eintragen, wenn der Termin noch nicht nach Outlook übertragen wurde. Wenn ein neuer Termin angelegt wird.
    Die 1 würde ich eintragen, wenn der Termin nach Outlook übertragen wurde.

    Bräuchte man nur noch nach den Zeilen suchen in denen eine 0 steht. Den Termin übertragen und die 0 durch eine 1 ersetzen.
    Schon hättest Du in Outllok keine Doppelten Termine mehr.

    MFG Skorpion 79

    Termine aus Excel in Outlook übertragen ohne Doppelungen

    Hi,

    die Idee ist schonmal super. Nun geht das Problem aber wie üblich natürlich weiter ;)

    Stell Dir mal vor, wir machen eine Einsatzplanung in Excel. Jede Zeile steht für ein Datum, in den Spalten stehen ca. 10 Mitarbeiter nebeneinander. Ich hatte vor, für jeden einen Button zu erstellen, den er nur anklicken braucht um seine Einsatzzeiten in Outlook zu übernehmen. Dafür wäre es natürlich unpraktisch, wenn jeder selber markieren müsste (in einer jeweiligen Extraspalte), dass er die Termine übertragen hat. Kann ich hier auch hinter jedem Kollegen eine versteckte Spalte einfügen, in der das Makro einen Eintrag generiert? Somit könnte das Makro dann selber beim nächsten mal schauen, ob die Zeile schon erledigt ist.

    Ich hoffe ich konnte das einigermassen verständlich beschreiben, ansonsten kann ich dir auch gerne mal ein Excel Beispiel per Mail senden...

    1000 Dank, Carsten
    Hallo.
    Klar kannst du eine extra Spalteeinfügen/versteckt und die durch das Makro ausfüllen lassen.
    Aber wie is denn wenn du statt dessen einfach FontColor oder BackgroundColor in der Mitarbeiter Zelle änderst wenn er die Termine übertragen hat?
    brauchste keine extra Spalte, un das kannste per Makro genauso abfragen.
    Oder statt Farbänderung schreibste ein Kommentar in die Zelle, da kannste dann sogar per MAkro das Datum und Uhrzeit des Übertrags einfügen.

    Termine aus Excel in Outlook übertragen ohne Doppelungen

    Hi,

    die Idee mit der Farbänderung ist perfekt! Ich habe nur leider keine Ahnung, wie ich das mache...kannst du dir vielleicht mal mein Makro vornehmen und das dann entsprechend einfügen?? Ich kann dir bei Bedarf auch gerne die entsprechende Tabelle zur Verfügung stellen...

    1000 Dank,

    Carsten
    Hallo,
    über wieviele Zeilen reden wir den?

    Wenn Du mit Zellen einfärben arbeiten willst würde ich erst einfärben, wenn er übertragen soll. Dann kannst Du, wenn übertragen wurde, die Einfärbung wieder zurücksetzen. Hintergrund: Wenn Du die Einfärbung immer wieder mit abspeicherst, würde die Mappe, durch die Farbe, wesentlich schneller gigantische Ausmaße annehmen.(Hab da schon die wahnsinnigsten Geschosse gesehen.) Dann dauert das Laden und Speichern irgendwann eine gefühlte Ewigkeit.
    ansonsten kann ich dir auch gerne mal ein Excel Beispiel per Mail senden...
    Du kannst eine Beispielmappe auch hier hochladen. Dann können Dir auch andere Mitglieder helfen. ;)
    na ob das mit speichern von Farbe jetzt die Datei so groß macht???
    Farbe ist ein Attribut, und ob das attribut nu weiß oder gelb oder sonst wie is.... is egal... ;)
    Schau dir mal in der Hilfe die Range/ Cells bzw Eigenschaften an. (Einfach im VBA eintippen, markieren und F1 drücken)
    BEi genauen Fragen einfach melden ;) am besten dann mit code und der genauen stelle wo es nich weiter geht
    Ich habe versucht mich hier selber ein wenig schlau zu machen, stosse aber sehr schnell an meine grenzen.

    im anhang ist eine excel tabelle mit dem makro. ich habe nun noch folgende probleme:

    • die doppelung der eintragungen
    • er macht auch termine, wenn nur das datum da steht, in der zelle rechts daneben aber nichts...

    es wäre echt super, wenn mir das jemand umbauen könnte!!!

    viele grüße,



    carsten
    Dateien