Am Tue, 13 Mar 2018 10:42:14 +0100 schrieb Boris Kirkorowicz <boris...@kirk.de>:
> Hallo, > ich möchte gern aus einem Monat als Text ("Januar", "Februar", usw.) > eine Zahl (1, 2, usw.) machen. Leider finde ich die passende Funktion > nicht -oder geht das nicht? Auf die Schnelle und alles andere als elegant ;-) : Wenn in A1 ein Monatsname steht, dann: =(FINDEN(GROSS(A1); "JANUARXXXFEBRUARXXMÄRZXXXXXAPRILXXXXMAIXXXXXXJUNIXXXXXJULIXXXXXAUGUSTXXXSEPTEMBEROKTOBERXXNOVEMBERXDEZEMBERX")-1)/9+1 Erklärung: - Wir bringen alle Monatsnamen auf gleiche Länge: Der September hat mit 9 Buchstaben die größte Länge, also: - JANUARXXX - FEBRUARXX - MÄRZXXXXX - APRILXXXX - ... - SEPTEMBER - ... - DEZEMBERX - Daraus basteln wir uns einen Text, der alle Monatsnamen in gleichem Abstand enthält: "JANUARXXXFEBRUARXXMÄRZXXXXXAPRILXXXX...SEPTEMBER...DEZEMBERX" - Wir wandeln den eingegebenen Text in Großbuchstaben =GROSS(A1) - Wir suchen den Monat in unserem Monatsnamen-Text =FINDEN(GROSS(A1);"JANUARXXX...SEPTEMBER...DEZEMBERX") Dabei finden wir die Monatsnamen im immer gleichen Abstand von 9 Zeichen an den Positionen: 1, 10, 19, ...100. - Wir ziehen von dieser Position 1 ab, damit wir daraus die Vielfachen von 9 erhalten: 0, 9, 18, ... 99. - Nun teilen wir durch 9 und erhalten die Zahlen: 0, 1, 2, 3, ... 11. - Nun zählen wir wieder 1 drauf, damit die Monate mit 1 beginnen. Fertig ;-) Wenn man statt der ganzen Monatsnamen nur die ersten drei Buchstaben verwendet, wird das ganze etwas kürzer: =(FINDEN(GROSS(LINKS(A1;3));"JANFEBMÄRAPRMAIJUNJULAUGSEPOKTNOVDEZ")-1)/3+1 Dann findet man allerdings nicht alle Rechtschreibfehler wie etwa "Oktember" oder "Novober", die eine 10 bzw. 11 liefern würden... Gruß, Michael -- ____ / / / / /__/ Michael Höhne / / / / / / mih-hoe...@web.de / ________________________________/ -- Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/ Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de Listenarchiv: https://listarchives.libreoffice.org/de/users/ Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert