Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  E-Mail
  Termine aus Excel in Outlook

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Termine aus Excel in Outlook (2833 mal gelesen)
benewet
Mitglied
Konstrukteur im Getriebebau


Sehen Sie sich das Profil von benewet an!   Senden Sie eine Private Message an benewet  Schreiben Sie einen Gästebucheintrag für benewet

Beiträge: 199
Registriert: 22.11.2005

erstellt am: 23. Mai. 2008 13:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


1.xls.txt

 
Mahlzeit.
Hab mal eine Frage. Möchte gerne den Arbeitsplan meiner Freundin in Outlook importieren lassen. Hab auch schon gegoogelt aber konnte leider nichts passendes finden, da ich blutiger Nicht-VBA-Könner bin. Hab neulich im Heissen Eisen ne Datei hochgeladen, wo die Fussballtermine der EM übertragen werden können. Hab mir das VBA-Skript mal angesehen, aber bin daraus leider überhaupt nicht schlau geworden.

Macht das noch jemand mit dem Übertragen. vielleicht ja sogar einfacher oder ist die einzig noble lösung mit VBA?

Edit: hab mal so einen Beispiel Plan hochgeladen. Ich möchte eben dass die Spalte B in Outlook übertragen wird.
------------------
Gruß Benewet

<<Dass sient ceinä Tipveler, tas ißt creatiefe Worrtgästaltung>>

[Diese Nachricht wurde von benewet am 23. Mai. 2008 editiert.]

[Diese Nachricht wurde von benewet am 23. Mai. 2008 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

runkelruebe
Ehrenmitglied V.I.P. h.c.
Straßen- / Tiefbau



Sehen Sie sich das Profil von runkelruebe an!   Senden Sie eine Private Message an runkelruebe  Schreiben Sie einen Gästebucheintrag für runkelruebe

Beiträge: 8075
Registriert: 09.03.2006

WIN7x64
Office 365 ProPlus

erstellt am: 27. Mai. 2008 09:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benewet 10 Unities + Antwort hilfreich

Hallo Benewet,
ich hab auch mal gegoogelt, mit Deiner thread-Überschrift...
Da ist nichts für Dich dabei?

Ich will es nicht am lebenden Objekt testen, denn die Arbeitstermine Deiner Freundin brauche ich persönlich nicht in meinem Kalender ;-) aber DAS oder DAS (mit weiterführendem link) könnte Dir doch helfen?

Wo hakt es denn konkret? Bitte nicht: "am Anfang"...
Ohne weiter getestet zu haben: eine Uhrzeit könnte Excel/Outlook ganz gut gefallen, ich denke, mit Früh/Spät/Nacht können beide nicht viel anfangen.

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info     Excel -Suche    RuA-Suche     FAQ-ACAD     Hilfe zu CAD.de 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benewet
Mitglied
Konstrukteur im Getriebebau


Sehen Sie sich das Profil von benewet an!   Senden Sie eine Private Message an benewet  Schreiben Sie einen Gästebucheintrag für benewet

Beiträge: 199
Registriert: 22.11.2005

erstellt am: 27. Mai. 2008 10:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Runkelruebe.

Es wäre natürlich möglich, den Schichten Uhrzeiten zuzordnen, das wäre das kleinste Problem, wenn auch trotzdem die Schicht "Früh" usw. als Name mitübernommen wird.

Hab mir mal auf der Seite den Code angeschaut:

Code:
Sub Excel_Control_Termin_nach_Outlook()
'E 2000
'Dim OutApp As Outlook.Application
Dim OutApp As Object, apptOutApp As Object
'Hier beginnen die Termine
Range("A2").Select
Do Until ActiveCell.Value = ""
    Set OutApp = CreateObject("Outlook.Application")
    Set apptOutApp = OutApp.CreateItem(1) 'olAppointmentItem)
    With apptOutApp
        'Datum und Uhrzeit
        'Hier werden zum aktuellen Tag 7 Tage addiert
        .Start = Format(Now()+7, "dd.mm.yyyy") & " 08:00"
        'Alternativ werden die Termine aus der Zelle genommen
        '.Start = Format(ActiveCell.Value, "dd.mm.yyyy") & " 08:00"     
        'Dauer. Angabe ist jeweils in ganzen Minuten zu setzen
        'Termininfo
        .Subject = "Rechnung: " & ActiveWorkbook.Name & " kontrollieren"
        'oder der Betreff steht in der Spalte rechts von den Terminen
        .Subject = ActiveCell.Offset(0,1)
        'Zusätzlicher Text
        .Body = ""
        'ort
        .Location = ""
        .Duration = "5"
        'Erinnerung
        .ReminderMinutesBeforeStart = 10
        'mit Sound :-)
        .ReminderPlaySound = True
        'Erinnerung wiederholen
        .ReminderSet = True
        'Termin speichern
        .Save
    End With
    'Nächste Zelle auswählen
    ActiveCell.Offset(1, 0).Select
    'Variablen leeren,... sonst "kotzt" Outlook irgendwann mal
    Set apptOutApp = Nothing
    Set OutApp = Nothing
Loop
MsgBox "Termine an Outlook übertragen!"
End Sub

Statt A2 würde bei mir ja B2 bzw. eine Zelle mit entsprechender Uhrzeiten eingetragen werden.
Zum einen aber, warum 7 Tage dazuaddieren? Das könnte ich ja genauso wie die Erinnerung rauslöschen. Ist für mich eher uninteressant.

Wie würde ich das machen, dass die jeweiligen Schichten mit den Uhrzeiten eingeordnet werden. Wird hierzu die Uhrzeit einer Zelle abgefragt oder wird dies im Code hinterlegt.

Wie du merkst, DAU 

------------------
Gruß Benewet

<<Dass sient ceinä Tipveler, tas ißt creatiefe Worrtgästaltung>>

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benewet
Mitglied
Konstrukteur im Getriebebau


Sehen Sie sich das Profil von benewet an!   Senden Sie eine Private Message an benewet  Schreiben Sie einen Gästebucheintrag für benewet

Beiträge: 199
Registriert: 22.11.2005

erstellt am: 27. Mai. 2008 10:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


1.xls.txt

 
Hab mir mal den Code etwas zugeschnitten:
Code:
Sub Excel_Control_Termin_nach_Outlook()
'E 2000
'Dim OutApp As Outlook.Application
Dim OutApp As Object, apptOutApp As Object
'Hier beginnen die Termine
Range("B2").Select
Do Until ActiveCell.Value = ""
    Set OutApp = CreateObject("Outlook.Application")
    Set apptOutApp = OutApp.CreateItem(1) 'olAppointmentItem)
    With apptOutApp
        'Datum und Uhrzeit
        .Start = Format(ActiveCell.Value, "dd.mm.yyyy") & " 06:00"
        'Dauer. Angabe ist jeweils in ganzen Minuten zu setzen
        'Termininfo
        .Subject = ActiveCell.Offset(0, 1)
        'Termin speichern
        .Save
    End With
    'Nächste Zelle auswählen
    ActiveCell.Offset(1, 0).Select
    'Variablen leeren,... sonst "kotzt" Outlook irgendwann mal
    Set apptOutApp = Nothing
    Set OutApp = Nothing
Loop
MsgBox "Termine an Outlook übertragen!"
End Sub

So könnte z.B. die Datei mit den Uhrzeiten aussehen. Würde mir das was bringen, oder sollte das besser in dem Code irgendwie miteingebaut werden?

Ach mir fällt auf, dass die Spalten noch getauscht werden müssten (zumindest damit der Code stimmt, bzw. dieser geändert werden müsste)

------------------
Gruß Benewet

<<Dass sient ceinä Tipveler, tas ißt creatiefe Worrtgästaltung>>

[Diese Nachricht wurde von benewet am 27. Mai. 2008 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

runkelruebe
Ehrenmitglied V.I.P. h.c.
Straßen- / Tiefbau



Sehen Sie sich das Profil von runkelruebe an!   Senden Sie eine Private Message an runkelruebe  Schreiben Sie einen Gästebucheintrag für runkelruebe

Beiträge: 8075
Registriert: 09.03.2006

WIN7x64
Office 365 ProPlus

erstellt am: 27. Mai. 2008 11:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benewet 10 Unities + Antwort hilfreich

Hi,
ich hab's mal kurz angetestet:
mit dem code von HIER läuft es wie folgt:

Ab A2 stehen untereinander die Termine und zwar:
in A2: 31.05.2008 08:00 in B2 dann der Betreff "FRÜH"
A3: 31.05.2008 22:00 ; B3: "NACHT"

Das mit den 7 Tagen hab ich jetzt nicht weiter hinterfragt, sondern rausgenommen ;-):
Tausche Zeile
'.Start = Format(Now() + 7, "dd.mm.yyyy") & " 08:00"
gegen Zeile
.Start = ActiveCell.Value  '(das Datum in A2 sollte dementsprechend formatiert sein)

Ich habe ehrlich gesagt kaum die Zeit, das weiter zu testen, die ersten Versuche sahen vielversprechend aus.

Wenn Du wissen möchtest, was im Einzelnen passiert, geh in den VBA-Editor, und geh das Makro mit der F8 schrittweise durch. Im code stehen schon viele Erklärungen drin, mit ein bißchen Zeit solltest Du es durchschauen können.

Code:
Sub Excel_Control_Termin_nach_Outlook()
'E 2000
'Dim OutApp As Outlook.Application
Dim OutApp As Object, apptOutApp As Object
'Hier beginnen die Termine
Range("A2").Select
Do Until ActiveCell.Value = ""
    Set OutApp = CreateObject("Outlook.Application")
    Set apptOutApp = OutApp.CreateItem(1) 'olAppointmentItem)
    With apptOutApp
        'Datum und Uhrzeit
        'Hier werden zum aktuellen Tag 7 Tage addiert
        .Start = ActiveCell.Value
        '.Start = Format(Now() + 7, "dd.mm.yyyy") & " 08:00"
        'Alternativ werden die Termine aus der Zelle genommen
        '.Start = Format(ActiveCell.Value, "dd.mm.yyyy") & " 08:00"
        'Dauer. Angabe ist jeweils in ganzen Minuten zu setzen
        'Termininfo
        .Subject = "Rechnung: " & ActiveWorkbook.Name & " kontrollieren"
        'oder der Betreff steht in der Spalte rechts von den Terminen
        .Subject = ActiveCell.Offset(0, 1)
        'Zusätzlicher Text
        .Body = ""
        'ort
        .Location = ""
        .Duration = "5"
        'Erinnerung
        .ReminderMinutesBeforeStart = 10
        'mit Sound :-)
        .ReminderPlaySound = True
        'Erinnerung wiederholen
        .ReminderSet = True
        'Termin speichern
        .Save
    End With
    'Nächste Zelle auswählen
    ActiveCell.Offset(1, 0).Select
    'Variablen leeren,... sonst "kotzt" Outlook irgendwann mal
    Set apptOutApp = Nothing
    Set OutApp = Nothing
Loop
MsgBox "Termine an Outlook übertragen!"
End Sub



PS: Ich sehe grade, in der Zwischenzeit hast Du schon selber rumprobiert... also, ich würde die Tabelle an den code anpassen, könnte einfacher sein, als andersrum, wenn Du wirklich keine Ahnung hast ;-) In diesem Fall also so, wie oben beschrieben. Die Uhrzeit kannst Du in der Zelle mit dem Datum (A2) mit angeben.

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info     Excel -Suche    RuA-Suche     FAQ-ACAD     Hilfe zu CAD.de 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benewet
Mitglied
Konstrukteur im Getriebebau


Sehen Sie sich das Profil von benewet an!   Senden Sie eine Private Message an benewet  Schreiben Sie einen Gästebucheintrag für benewet

Beiträge: 199
Registriert: 22.11.2005

erstellt am: 27. Mai. 2008 12:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Also ich hab das Ganze jetzt mal in Excel eingebaut. Hat soweit auch funktioniert.
ABER: Irgendwas stimmt nicht.
Zum Einen kommen Erinnerungen auf!
Zum Anderen wird das Datum irgendwie auf das Jahr 1899 gesetzt. Hab auch schon mehreres ausprobiert in Sachen Format. Hat alles nix genutzt.
Eine Sache ist noch. Wie baue ich die Dauer des Termins ein, also im Code? Das mit dem Betreff, sprich der Schicht selbst geht klar und der Beginn (in Zelle B2) auch.

Code:

Private Sub CommandButton1_Click()
'E 2000
'Dim OutApp As Outlook.Application
Dim OutApp As Object, apptOutApp As Object
'Hier beginnen die Termine
Range("B2").Select
Do Until ActiveCell.Value = ""
    Set OutApp = CreateObject("Outlook.Application")
    Set apptOutApp = OutApp.CreateItem(1) 'olAppointmentItem)
    With apptOutApp
        'Datum und Uhrzeit
        .Start = Format(ActiveCell.Value, "dd.mm.yyyy") & " 06:00"
        'Dauer. Angabe ist jeweils in ganzen Minuten zu setzen
        'Termininfo
        .Subject = ActiveCell.Offset(0, 2)
        'Termin speichern
        .Save
    End With
    'Nächste Zelle auswählen
    ActiveCell.Offset(1, 0).Select
    'Variablen leeren,... sonst "kotzt" Outlook irgendwann mal
    Set apptOutApp = Nothing
    Set OutApp = Nothing
Loop
MsgBox "Termine an Outlook übertragen!"
End Sub

------------------
Gruß Benewet

<<Dass sient ceinä Tipveler, tas ißt creatiefe Worrtgästaltung>>

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

runkelruebe
Ehrenmitglied V.I.P. h.c.
Straßen- / Tiefbau



Sehen Sie sich das Profil von runkelruebe an!   Senden Sie eine Private Message an runkelruebe  Schreiben Sie einen Gästebucheintrag für runkelruebe

Beiträge: 8075
Registriert: 09.03.2006

WIN7x64
Office 365 ProPlus

erstellt am: 27. Mai. 2008 13:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für benewet 10 Unities + Antwort hilfreich

Wenn Du "meinen" code nimmst, siehst Du die Zeile
        .Duration = "5"    <- anpassen

Darunter sind die Zeilen für die Erinnerungen (Reminder)

Das fand ich an diesem Beispiel ja grade so nett: es steht ne Menge drin ;-) Startzeit steht in A2, Betreff in B2, wenn Du die Zeile mit .body und/oder .location noch ausbaust, kannst Du noch mehr eintragen...
.Body = ActiveCell.Offset(0, 2) z.B.


Das versteh ich nicht: "Zum Anderen wird das Datum irgendwie auf das Jahr 1899 gesetzt"
Im Excel? Datum im Excel sind mit allen Werten einzutragen: "27.05.2008 08:00" vorher auf Datum mit Uhrzeit formatieren, Uhrzeit nicht schlabbern sondern mittippen!

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info     Excel -Suche    RuA-Suche     FAQ-ACAD     Hilfe zu CAD.de 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz