Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1224to1228
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

iCal - Datei aus Excel erstellen / Kalender .ics

iCal - Datei aus Excel erstellen / Kalender .ics
PeterO
Hallo Forum!
mittels eines Makros möchte ich aus einer Exceltabelle (hier ein Dienstplan) eine Kalenderdatei im iCal-Format erstellen. Optisch scheint es zu funktionieren (siehe Inhalt Textdatei), aber beim Import in einen Kalender (Sunbird bzw. Outlook 2003) kommt eine Fehlermeldung, dass die Datei fehlerhaft sei. Hier meine Dateien:
https://www.herber.de/bbs/user/76093.xls
https://www.herber.de/bbs/user/76094.txt
(ist tatsächlich als .ics gespeichert, war als Upload aber nicht erlaubt)
Den Code habe ich mir aus verschiedenen Foren zusammengesucht und erweitert/angepasst.
Sicherlich hat sich der ein oder andere auch schon mal damit befasst und kann helfen.
Gruß Peter

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: iCal - Datei aus Excel erstellen / Kalender .ics
10.08.2011 10:36:46
mumpel
Hallo!
iCal? Schon wieder dieser Apple-Sch***!? Weshalb nutzt Du nicht das was für Outlook und/oder Sunbird vorgesehen ist? Meiner Kenntnis nach kann Outlook mit iCal-Dateien nichts anfangen. Bei Outlook kannst Du direkt per VBA Kalendereinträge erzeugen, ohne den Umweg über externe Dateien.
Gruß, René
ups - vergessen wir mal Apple
10.08.2011 10:49:23
PeterO
Hallo René,
ich habe mit Apple nichts am Hut! Ich halte es auch für *****ß. Das mit iCal war mir so überhaupt nicht bewusst, da mit Apple wirklich nicht interessiert.
Es geht mir rein um ics-Dateien, die meiner Erfahrung nach sowohl von Sunbird (mein Kalender-Programm) wie auch von Outlook (die meisten meiner Bekannten) verwendet werden können. Auf der Webseite sunbird-kalender.de werden auch nur Kalenderdateien im ics-Format angeboten. Daher nahm ich an, dass dies der Standard wäre.
Der Dienstplan wird aus verschiedenen Gründen über Excel erstellt und ist hier nur vereinfacht dargestellt. Daher der Weg von Excel zur ics-Datei.
Lasse den Thread offen. Vielleicht hat ja jemand eine Idee.
Gruß Peter
Anzeige
Problem gelöst
10.08.2011 10:59:43
PeterO
Manchmal ist es ja so einfach:
Habe mir nach der Erstellung die ics-Datei mit dem Text-Editor angesehen. Danach ging der Import nicht mehr. Wenn ich sie mir nicht ansehe, funktioniert es einwandfrei, bis auf ein kleines Zeitmanko, das noch angepasst werden muss...
AW: Problem gelöst
10.08.2011 11:04:52
mumpel
Da war ich wohl zu langsam. ;-) Aber Outlook 2010 hat dieses Problem nicht. Da kann ich die ICS-Datei mit dem Editor anschauen wie ich will, Outlook 2010 akzeptiert sie immer. Ist vielleicht Dein Texteditor defekt?
AW: Problem gelöst
10.08.2011 11:28:33
PeterO
mag sein
AW: ups - vergessen wir mal Apple
10.08.2011 11:02:01
mumpel
Dann eben nicht Apple. ;-) Aber das "iCal" ist doch vom Namen her schon sehr an das Apple-i angelehnt. Schrecklich diese Apple-Mania.
Ich habe es mal ausprobiert. Outlook 2010 hat die Datei nach dem Speichern als ICS-Datei problemlos importiert. Termin habe ich gefunden bei 09. September, 21:00 Uhr ( "Praxis hier") und am 10. September einen Termin im U-Raum. Importiert habe ich über "Kalender verwalten->Kalender öffnen->Aus dem Internet". Die Datei sollte also in Ordnung sein. Also muss Dein Outlook irgendein Problem haben.
Anzeige
AW: ups - vergessen wir mal Apple
10.08.2011 11:33:49
PeterO
Hallo René,
habe das Zeitenproblem jetzt in den Griff bekommen, indem ich der ics-Datei noch etwas Code in den "Kopf" gepackt habe.
Hier der komplette Code, falls ihn noch jemand benötigt:
Sub ICS_Erstellen()
Range("A2").Select
'Erstellt den Zeitstempel
'wird benötigt für die UID des Kalendereintrages und für die Felder
'"erstellt am" --> "DTSTAMP" und "zuletzt geändert am" --> "LAST-MODIFIED"
Dim jahr_jetzt As String
jahr_jetzt = Year(Now)
Dim monat_jetzt As String * 2
monat_jetzt = Month(Now)
If monat_jetzt  ""
Dim datstart As Date
datstart = ActiveCell.Offset(i, 0)
Dim timestart As Date
timestart = ActiveCell.Offset(i, 1)
Dim datend As Date
datend = ActiveCell.Offset(i, 2)
Dim timeend As Date
timeend = ActiveCell.Offset(i, 3)
Dim thema As String
thema = ActiveCell.Offset(i, 4)
Dim ort As String
ort = ActiveCell.Offset(i, 5)
Dim diensthabender As String
diensthabender = ActiveCell.Offset(i, 6)
'Aufbereitung Datum und Zeit für Beginn
Dim jdatstart As String
jdatstart = Year(datstart)
Dim mdatstart As String
mdatstart = Month(datstart)
If mdatstart 
Gruß Peter
Anzeige

44 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige