Daten nach Outlook übertragen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox


Excel-Version: 8.0 (Office 97)
nach unten

Betrifft: Daten nach Outlook übertragen
von: Peter
Geschrieben am: 26.06.2002 - 11:48:04

Liebe Experten,
kennt jemand eine Möglichkeit, eine Geburtstagsliste - bestehend aus Name, Vorname und Geburtsdatum - per VBA von Excel in den Outlook-Kalender zu übertragen ??
Danke für jede Antwort.
Peter

nach oben   nach unten

Re: Daten nach Outlook übertragen
von: ajk
Geschrieben am: 26.06.2002 - 12:59:22

Hallo,

Lösung per Mail unterwegs...

Gruß
AJK


nach oben   nach unten

Herzlichen Dank. Peter (o.T.)
von: Peter
Geschrieben am: 26.06.2002 - 13:07:21

ohne Text

nach oben   nach unten

Re: Daten nach Outlook übertragen
von: Zohdy
Geschrieben am: 26.06.2002 - 14:04:41

Hey
das hätte ich auch gerne.
Gruß
Zohdy

nach oben   nach unten

Re: Herzlichen Dank. Peter (o.T.)
von: ajk
Geschrieben am: 26.06.2002 - 14:48:17

Hallo,

da es mehrere wollen hier kurz der Code:
Bitte einen Verweis zur Outlook herstellen unter Extras-Verweise

Folgender Aufbau wird vorrausgesetzt:

1. Spalte: Name
2. Spalte: Geburtstag
3. Nur Namenspalte Selectieren VOR dem Ausführen des Programms!
4. Ist mit heißer Nadel gestrickt, evtl. anpassen!

Private Sub nachoutlook()
On Error GoTo err_termin
Dim objOutlook As New Outlook.Application
Dim erinnern As AppointmentItem
Dim erinnern1 As RecurrencePattern
Dim intAnswer As Integer
Dim zelle As Range

Set objContact = objOutlook.CreateItem(olContactItem)
Set erinnern = objOutlook.CreateItem(olAppointmentItem)
For Each zelle In Selection 'Spalte mit Name, wobei Name (1.Spalte) u. dann Geburtstag (2.Spalte) steht
zelle.Activate
If IsDate(zelle.Offset(0, 1)) = False Or zelle.Offset(0, 0) = "" Then
Beep
MsgBox "Fehlende oder fehlerhafte Daten in Zelle '" & zelle.Offset(0, 0).AddressLocal & "' oder in Zelle '" & zelle.Offset(0, 1).AddressLocal & "'!", vbCritical, "Benutzer: " & Application.UserName
GoTo weiter
End If

With erinnern

.Subject = "Geburtstag von: " & zelle.Offset(0, 0).Value

'Ort definieren
.Location = "DEINE STADT"

'Startdatum zuweisen
On Error GoTo re
.Start = zelle.Offset(0, 1) + #7:45:00 AM#

On Error GoTo 0
'Enddatum zuweisen
.End = zelle.Offset(0, 1) + #7:46:00 AM#

'Weiteren Text zuweisen
.Body = "Geburtstagsparty!!"

'Kategorie definieren
.Categories = "Geburtstag"
'Erinnerung einschalten
.ReminderSet = True
'Erinnerung auf 15 Minuten setzen
.ReminderMinutesBeforeStart = 15
'intAnswer = MsgBox("Eintrag wurde übertragen. Wollen Sie ihn korrigieren - bei 'Nein' wird er gespeichert! - ?", 36, "Rückmeldung Übertragung")
'If intAnswer = vbYes Then
'anzeigen
'.Display (True)
'Else
.Save
'End If
End With
Set erinnern1 = erinnern.GetRecurrencePattern
With erinnern1
.RecurrenceType = olRecursYearly 'Serie setzen auf jährlich
End With
erinnern.Save ' Speichern, damit Serie

weiter:
Next
Set erinnern = Nothing
Set erinnern = Nothing

exit_termin:
Exit Sub
err_termin:
MsgBox "Bei der Übertragung ist ein Fehler aufgetreten oder es wurden keine Daten selektiert!", vbOKOnly, "ACHTUNG! ÜBERTRAGUNGSFEHLER!"
Resume exit_termin
re:
Beep
MsgBox "Es ist bereits ein Serientermin vorhanden! Bitte manuell pflegen!", vbCritical
Resume exit_termin

End Sub


nach oben   nach unten

Korrektur
von: Peter
Geschrieben am: 27.06.2002 - 12:56:02

Nochmals Danke an ajk.
Für alle die es interessiert:
Das Programm überträgt so bei mir nur den 1. Termin. Danach steigt das Programm mit einer Fehlermeldung (Es handelt sich um einen Serientermin .. bla bla) aus der For Each - Schleife aus.
Es funktioniert, wenn Set erinnern = ... als 1. Anweisung in die For Each - Schleife gesetzt wird.
Peter
 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Daten nach Outlook übertragen"