Ich war ja nicht untätig und bin etwas weiter. Dank google und Foren habe ich eine Möglichkeit gefunden. Die Daten werden von https://www.ferienkalender.com/ferien_de...berlin.htm (bzw. dem ausgewählten Jahr + Bundesland) gezogen. Das Script hierzu weiter unten.
Nun stehe ich vor folgender Herausforderung: Er zieht die Daten, sofern sie klar formatiert sind, wie beispielsweise die Winterferien 05.02 bis 10.02. und trägt es mir wie folgt in eine Tabelle:
A
B
C
D
1
Winterferien
05.02. - 10.02.
05.02.2018
10.02.2018
2
Osterferien / Frühjahrsferien
26.03. - 06.04.
26.03.2018
06.04.2018
3
Pfingstferien
30.04. - 11.05. - 22.05.
30.04.2018
#WERT!
4
Sommerferien
05.07. - 17.08.
05.07.2018
17.08.2018
5
Herbstferien
22.10. - 02.11.
22.10.2018
02.11.2018
6
Weihnachtsferien
22.12. - 05.01.
22.12.2018
05.01.2019
Verwendete Systemkomponenten: [Windows (32-bit) NT :.00] MS Excel 2016
Habe ich jetzt aber ein anderes Format, wie Pfingsten, bekomme ich eine Fehlermeldung. (Hier #WERT!) da er die 3 einzelnen Tage so natürlich nicht ins Format übertragen kann.
Weitere Formate wären beispielsweise (https://www.ferienkalender.com/ferien_de...ommern.htm) Herbstferien 04.10./07.10. - 12.10./01.11. In diesem Fall trägt er mir 12.10. - 01.11. ein was auch nicht korrekt ist. Hier müßte 07.10 - 12.10. .. und im idealfall der 04.10, sowie der 1.11 gesondert.
Ich habe euch die gesamte Datei mal angehangen. Nein - ich bin kein VBA Profi Vielleicht kann hier jemand helfen?
ich hab hier mal einen Kalender, der recht schlicht aber auch einfach zu bedienen ist.
Im Kalenderblatt selbst kannst Du die Feiertage, pers. Urlaubs- und Feiertage ersehen (unter anderem auch als Kommentare)
Im Feiertageblatt kannst Du das aktuelle Bundesland mit seinen Feriendaten erlesen, sowie die Anzahl der jeweiligen Feiertage, die den Wochentag, sowie die vergangenen Zeiten einblendet. Weiters ist es möglich persönliche Feier/Jahrestage anzugeben, welche wiederum im Kalenderblatt eingeblendet werden. Vorgesehen ist auch eine historische Abfrage nach dem gregorianischen und julianischem Kalender
Im Ferienkalenderblatt wird das jeweilige Bundesland über den obigen Rollbalken aufgerufen. Die Ferientermine werden über die eingeschriebenen Links aufgerufen und müssen händisch eingegeben werden.
Ich wollte dieses über CAV-Dateien einlesen, bin aber leider gescheitert
Ich hoffe Du kannst es gebrauchen und über weiterführende Verbesserungen würde ich mich freuen.
by the Way, dieser Kalender hat viele Väter, unter anderem
In meiner Datei wird versucht die Ferien- und Feiertagstermine direkt online abzugreifen. Leider gibt es hier an einigen Stellen Probleme mit dem Format (siehe mein Post). Vielleicht hast du eine Idee, wie wir die Daten in zwei Spalten aufteilen könnten? Wäre dann auch in deinem Kalender nutzbar und man müßte die Daten nicht mehr manuell eintragen.
von - bis ermittel ich bei mir immer per Formel. Anbei mal für die einfachen eintägigen und Von-Bis-Daten - gerechnet für Sachsen. wenn 3 Daten in einer Zelle sind, wird es etwas komplexer, wäre aber auch lösbar. Man müsste eben noch eine entsprechende Fallunterscheidung reinbringen.
Im Kalender sieht das dann so aus, mit bedingter Formatierung für Ferien, Feiertage, Wochenenden und heute(). Das Grün für die Ferien zeigt mir das Tabellentool hier leider nicht an ist aber drin
30.08.2019, 17:11 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2019, 17:12 von jules.)
Servus Schauan,
das "einfache" splitten hat meine Formel drin (VBA). Hier stehe ich aber vor der Herausforderung, dass z.B. die Pfingstferien 2020 in Niedersachsen wie "22.05./02.06." sind und er mir daraus 22.05.2020 bis 02.06.2020 macht, da er den "/" in ein "-" umwandelt. Alle Daten mit Bindestrich in Spalte B werden bei meiner Formel in Spalte C und D aufgeteilt. (von - bis). Herausforderung also wie beschrieben bei einzelnen Daten, wie Pfingsten in Niedersachen 2020 oder wenn gar 3 Daten drin stehen..
.. oder um deine Tabelle zu nehmen, wie würdest du dann Ostern in Sachsen-Anhalt lösen...?
Ich fürchte das wird bis auf Weiteres nicht möglich sein, ohne das komplette Script umzuschreiben :16:
30.08.2019, 17:49 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2019, 17:49 von schauan.)
Hallöchen,
hier mal die erweiterten Formeln. Ich hab mal das Mehrfachdatum zu Sachsen geschrieben und noch nur einen Tag dazu. Den hat man zwar 3x, aber sollte die bedingte Formatierung nicht stören. Selbige muss dann noch um die 3. Zeile erweitert werden - da es nur ein Tag ist, wäre es einfach. Problematischer wer es, wenn zwei Zeiträume drin stehen oder ein Zeitraum und zwei andere Tage … Oder jemand nimmt statt dem * ein + … Oder noch irgendwas wird anders ...
Muss mir das mal ansehen, da mein Script bisher eben alles über VBA reingeholt hat. Dies wäre ggf. eine Möglichkeit nur die Daten direkt über VBA in eine Tabelle zu holen und dann im Anschluss mit deiner Formel und bedingter Formatierung weiterzuarbeiten..
die eine oder andere Formel kann man z.B. direkt mittels Application.Evaluate in VBA verwenden - allerdings in englischer Syntax. Die würde man aber auch noch per Aufzeichnen hinbekommen. Ich würde - was Du eventuell auch hast - den String splitten oder in einer Schleife zerlegen. Wenn Du zum Splitten zuerst den Schrägstrich durch ein - ersetzt und dann splittest, bekommst Du ein Array mit 3 Daten statt sonst 2. Da könnte man eventuell voraussetzen, dass das 3. Datum ein einzelner Tag ist. Im Prinzip so mal schnell hingeschrieben:
dim arrDat arrDat=split(replace(cells(14,3).value,"/","-"),"-") Select Case Ubound(arrDat) Case 0 'nur ein Tag '... Case 1 'von bis '... Case 2 'von bis und ein Tag '... End Select
Falls es mal passieren kann, dass erst ein Tag in der Zelle steht und dann der Zeitraum, müsste man bei den Aktionen bei Case 2 vielleicht noch bewerten, ob der / vor oder nach dem - steht ....
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28 • jules