Mumienkostüme kamen cooler rüber als noch keine Blumen auf dem Klopapier waren.

In einer Spalte befinden sich Datumsangabe in der Form Monat – Tag – Jahr. Muss man Formeln oder Power Query bemühen, um diese Angaben in eine korrekte Form bringen?

Nein: der Assistent Daten / Text in Spalten hilft. Stellt man im letzten Schritt das Datumsformat MTJ ein, werden die Daten mit sich selbst überschrieben:

Und das Ergebnis steht in der korrekten Form in der Spalte.

Danke an Alan Murray für diesen wertvollen Tipp.

Mama – jeder in der Schule nennt mich Mafioso – ich werde morgen mit dem Direktor sprechen! – Aber lass es wie einen Unfall aussehen.

Word kann nicht rechnen. Nicht gut.

Ich erhalte die Frage, wie man Datumsangaben, die sich in Textfeldern in Word befinden, berechnen kann, beispielsweise den folgenden Tag berechnen kann. Meine Antwort:

Hallo Herr R.,

Während ein

{ = { PAGE} + 1}

funktioniert, klappt leider eine Berechnung

{ = { REF Datum} + 1}

nicht. Ich wüsste auch nicht, wie man den Wert der Textmarke in eine Zahl verwandeln kann.

Wenn Sie das unbedingt brauchen und wenn das System (ja, ich erinnere mich) dies nicht liefert, sehe ich auch nur eine Lösung Programmieren.

Und ja: RTF kann keine Makros speichern; also extern (Tipp: nicht in Normal.dotm, sondern in eine andere Vorlage). Ja – so wie Ihr Beispiel (ohne es getestet zu haben)

Gegenfrage: kann man nicht etwas einschieben?

System liefert Daten. Kann man die nicht abfangen, in Excel schreiben und dort rechnen und dann (mit einem Serienbrief) auf diese Daten zugreifen?

Sorry, Felder, VBA – Word ist seeeeehr schlecht im Rechnen …

Liebe Grüße  und trotzdem ein schönes Wochenende – es soll ja regnen – ich kann mal ein bisschen grübeln

Rene Martin

PS: Formularfelder können ja auch rechnen – aber auch das scheitert:

Du weißt, dass du alt wirst, wenn in einem Horrorfilm nervige Teenager umgebracht werden und du den Mörder verstehen kannst.

Erstaunlich. In einem Bereich stehen Datumsangaben. In einer Zelle steht eine andere Datumsangabe. Sie soll „gesucht“ werden. Weder ZÄHLENWENN noch VERGLEICH haben ein Problem damit:

Auch der VBA-Befehl CountIf

datDatum = ThisWorkbook.Worksheets(1).Range("F19").Value
MsgBox Application.WorksheetFunction.CountIf(ThisWorkbook.Worksheets(1).Range("F1:F16"), datDatum)

arbeitet problemlos. Allerdings liefert MATCH einen Fehler:

Der Befehl

Application.WorksheetFunction.Match(datDatum, ThisWorkbook.Worksheets(1).Range("F1:F16"), 0)

klappt nicht.

Auch nicht in:

Application.WorksheetFunction.Match(ThisWorkbook.Worksheets(1).Range("F19").Value, _
   ThisWorkbook.Worksheets(1).Range("F1:F16"), 0)

Wahrscheinlich ist die Ursache folgende: Excel kennt nur die Datentypen Text und Zahl, während VBA verschiedene Datentypen für Zahlen kennt (Integer, Long, Double, …), aber auch für Datum (Date).

Also: Flux den Wert der Variablen datDatum in eine Long-Zahl konvertieren (CLng(datDatum) ) – und schon klappt es wieder:

Application.WorksheetFunction.Match(CLng(datDatum), ThisWorkbook.Worksheets(1).Range("F1:F16"), 0)

Kontostand angeschaut und gedacht: „arm aber sexy“. In den Spiegel geschaut und gedacht: „Mist, nur arm!“

Ein Hi in den Süden,

     hallo Rene,


heute ist Samstag und das halbe Wochenende schon einmal rum. Hm.

Der sechste Arbeitstag läuft bei mir noch bis 0 Uhr, morgen auch, aber eingeschränkt.

Was wurde aus meinem aktuellen EXCEL-VBA-Projekt?

(1) Deinen VBA zum Setzen des Filters habe ich versucht zu erweitern durch Variablen.
     Klappt nicht so dolle.

    s_DatenRange = "$A$1:$I$" & l_ZeileLetzte
    s_DatumStart = s_Start_Jahr & ", " & s_Start_Monat & ", " & s_Start_Tag
    s_DatumEnde = s_Ende_Jahr & ", " & s_Ende_Monat & ", " & s_Ende_Tag

    MsgBox "Jetzt kommt das Problem: DateSerial - Argument ist nicht optional"

' Versuch 1
    ActiveSheet.Range(" & s_DatenRange & ").AutoFilter Field:=6, Criteria1:= _
    ">=" & CDbl(DateSerial(" & s_DatumStart & ")), Operator:=xlAnd, Criteria2:="<=" & CDbl(DateSerial(" & s_DatumEnde  & "))

' Versuch 2

Dim s_teil_1, s_teil_2 As String

s_teil_1 = DateSerial(" & s_DatumStart & ")
s_teil_2 = DateSerial(" & s_DatumEnde & ")
s_teil_1 = DateSerial(s_DatumStart)
s_teil_2 = DateSerial(s_DatumEnde)

    ActiveSheet.Range(" & s_DatenRange & ").AutoFilter Field:=6, Criteria1:= _
    ">=" & CDbl(" & s_teil_1 & "), Operator:=xlAnd, Criteria2:="<=" & CDbl(" & s_teil_2 & ")

Hallo Jürgen,

Zu DateSerial: Kennst du dich Excel-Funktion DATUM nicht? Sie wandelt eine JahresZAHL, eine MonatsZAHL und eine TagesZAHL in ein Datum um. Und eben das macht DateSerial in VBA.

Forscher haben Mikroplastik im menschlichen Darm gefunden. Die nächste Evolutionsstufe heißt dann „Lego“.

Hallo Rene,

deine Mails mit positiven Informationen und Anhang erreichten mich.

Themenwechsel 3 von 3:

Falls du an weiteren Fragen rund um EXCEL-VBA Interesse hast, informiere mich einfach. Dazu habe ich dir zwei Dateien mitgesendet.
Die Lösung der Probleme ist kein MUSS.

Die Thematiken:

(1) ein Filterproblem ist bestimmt nicht so schwierig zu lösen. Eine Liste:

Der Filter:

Nach Filtersetzen werden keine Daten angezeigt.

Der Code:

    ActiveSheet.Range("$A$3:$F$12").AutoFilter Field:=4, Criteria1:= _
        ">=01.01.2000", Operator:=xlAnd, Criteria2:="<=31.03.2022"

Hallo Jürgen,

der Filter verlangt einen Datumswert, der in eine Zahl konvertiert wurde:

    ActiveSheet.Range("$A$3:$F$12").AutoFilter _
        Field:=4, 
        Criteria1:= ">=" & CDbl(DateSerial(2000, 1, 1)), _
        Operator:=xlAnd, _
        Criteria2:="<=" & CDbl(DateSerial(2022, 3, 31))

Dann klappt es:


Es gibt Tage, da trete ich nicht ins Fettnäpfchen. Da falle ich in die Fritöse.

Kennst du Anrufe, die beginnen mit einem „hast du mal einen Moment Zeit?“ oder: „störe ich gerade?“

Richtig: Angelika rief am Wochenende an. Meine Kollegin Angelika. Sie bereitet gerade einen Excel-Makro-Kurs vor und suchte einige gute Gedanken für Befehle, die man mit dem Makrorekorder aufzeichnen könne. Dabei stieß sie auf die benutzerdefinierte Kopfzeile.

„Sag mal“, fragte sie, „wenn ich in der Kopfzeile aufzeichne: Seitennummerierung, Datum, Dateiname und Tabellenblattname passiert etwas ganz Komisches.“

Zuerst glaubte ich es nicht. Also – auch aufgezeichnet:

Ich lasse das Makro laufen:

Das Ergebnis verblüfft:

Und noch einmal:

Und wieder:

Und wieder. Und wieder. Und wieder ….

Ich schaue im Code nach:

[...]
    With ActiveSheet.PageSetup
        .LeftHeader = "&P / &N"
        .CenterHeader = "&D / &T"
        .RightHeader = "&Z&F / &A"

Eigentlich alles okay. Ich habe keine Ahnung, was hier passiert!

Ich rate Angelika, im Makrokurs nur den Firmennamen als Text aufzuzeichnen. Das klappt!

Okay – für Datum und Uhrzeit stehen die VBA-Befehle Date und Time zur Verfügung; für den Dateiname ActiveWorkbook.Name (oder Fullname), für den Blattnamen ActiveSheet.Name, aber für die Seitennummer? Ich weiß keine Lösung.

Danke an Angelika Meyer für diesen Hinweis!

Und nur wenig nach der Veröffentlichung des Artikels erreicht mich ein Kommentar von Ernst. Großartig – DAS ist des Rätsels Lösung! Hier sein Kommentar:

Hallo Rene,

dieses eigenartige Verhalten tritt bei mir (Excel 2019) nur dann auf, wenn vor dem Festlegen der PageSetup-Eigenschaften die Application.PrintCommunication-Eigenschaft auf False gesetzt wird. Wenn die Kommunikation mit dem Drucker nicht abgeschaltet wird, tritt dieses Verhalten nicht auf.

Bei der Makroaufzeichnung werden die Befehle
Application.PrintCommunication = False und Application.PrintCommunication = True
verwendet.

Bei Microsoft steht wohl folgender Hinweis:

Legen Sie die PrintCommunication-Eigenschaft auf False fest, um die Ausführung von Code zu beschleunigen, mit dem PageSetup-Eigenschaften festgelegt werden.

Legen Sie die PrintCommunication-Eigenschaft nach dem Festlegen der Eigenschaften auf True fest, um alle im Cache vorhandenen PageSetup-Befehle auszuführen.

Scheinbar klappt dies nicht richtig.

Salü

Ernst

Darf ich dir deine Nase zurückgeben. Sie steckt in meinen Angelegenheiten.

Excelschulung. Wir erstellen einen Kalender. Daran kann man einige Funktionen üben: die Funktion WENN, Datumsfunktionen, Textfunktionen. Um Funktionen aus der Kategorie „Nachschlagen und verweisen“ zu zeigen, erstelle ich einen mehrsprachigen Kalender. Über eine Auswahlliste (Datenüberprüfung) wird die Sprache gewählt:

Mit VERGLEICH wird die Zeilennummer ermittelt; INDEX „holt“ den Ländercode aus einer kleinen Tabelle:

Eine Teilnehmerin sagt, dass es bei ihr nicht funktioniere. Ich schaue auf ihren Bildschirm. Richtig: Sie hat Excel 2013. Das erkenne ich sofort an den Großbuchstaben der Texte im Menüband. Bis Excel 2013 wurde nicht der ISO-Sprach- und Ländercode verwendet, sondern ein anderer. Zum Glück finde ich ihn auf der Festplatte in einem älteren Beispiel:

Und DAMIT funktioniert es nun auch bei ihr:

Zweite Grundregel der Gastronomie: Immer Butter bei die Tische!

Hallo Rene!

Hoffe, dass du, deine Familie und dein Umfeld alle gesund seid.

Du hast mir vor einiger Zeit geholfen mehrere Belegnummern in eine Zelle zu schreiben. Nun wollte ich auch das Datum (auch mehrere) auf gleiche Weise anzeigen lassen. Herausgekommen sind dann die Zahl(en) vom Datum. Wenn nur eine Zahl (=Datum) angezeigt wurde konnte ich das Datumformat. Wenn nur ein Zahlenwert vorhanden ist, habe ich, wie gelernt, die Formel mit 1 multipliziert und dann das Datumformat angewendet. Meine Vermutung ist, dass man die Formel um eine Formatierungsformel ergänzt. Videos über die allgemeine Formatierung mit Formeln in der Zelle habe ich leider nicht gefunden. Bitte um Lösung.

Vielen Dank, Peter

Hallo Peter,   die Formel muss statt

=TEXTVERKETTEN(", ";WAHR; FILTER(tbl_KF_Kosten[Datum];tbl_KF_Kosten[Pferd]=E30;"0")) 

  lauten:   

=TEXTVERKETTEN(", ";WAHR; TEXT(FILTER(tbl_KF_Kosten[Datum];tbl_KF_Kosten[Pferd]=E30;"0");"TT.MM.JJJJ")) 

   Die Funktion TEXT formatiert eine Zahl (und damit auch ein Datum).

LG Rene

Ich liege hier wie Gott mich schuf! – Du hast einen beigen Pullunder mit Karomuster an und eine Feinrippunterhose. – Es ist ein grausamer Gott!

Vorgestern habe ich einen Vortrag über Zahlenformate in Excel auf dem Excel-meetup in London gehalten. Danach kam die Frage nach (ost-)arabischen Ziffern, beziehungsweise Datumsangaben. Ein Teilnehmer erzählte, wie schwierig das Umrechnen der verschiedenen Kalender ist. Ich probiere es aus:

Ich schalte die Oberfläche auf Persisch. Ich hätte auch Arabisch nehmen können. Ich trage die Zahl 1 ein, ziehe mit gedrückter [Strg]-Taste herunter. Klappt. Ich hole aus der Zeichentabelle die arabisch-indische Ziffer 1, und ziehe mit [Strg] nach unten. Klappt auch:

Amüsanterweise werden die Zahlen in „unserer“ arabischen Schreibweise in der Bearbeitungsleiste angezeigt.

Übrigens: ein Umstellen der Sprache auf Persisch (Farsi):

ermöglicht leider nicht die Eingabe der arabisch-indischen Ziffern:

Deshalb muss die Zeichentabelle herhalten:

Ich drücke [Strg] + [;] für das heutige Datum. Runterziehen – kein Problem. Ein Blick in das Kombinationsfeld Zahlenformat zeigt: das heutige Datum (12.03.2021) würde in das Datum 22.12.1399, das im Iran das aktuelle Datum ist, umgerechnet werden:

Ein Klick auf die Schaltfläche bestätigt das – nicht gerade vertrauenserweckend, wenn in der Bearbeitungsleiste ein völlig anderes Datum steht als in der Zelle:

Und die ostarabischen Ziffern? Ich wechsle die Datumssprache auf Farsi und finde dort mehrere Schreibweisen für das Datum:

Oder so?

Nicht gerade einfacher macht die Tatsache, dass wir dort noch einen dritten Kalender zur Verfügung haben: den Hijri-Kalender, den islamischen Kalender. Dort schreiben wir heute den 29.07.1442. Uff!

Übrigens: wer sich mit Arabisch und/oder persisch auskennt, stellt fest, dass die persische Ziffer für 4, 5 und 6 verwendet werden: ۴۵۶, nicht die arabische Ziffern: ٤٥٦

Ein Blick auf die Tabelle offenbart die Schwierigkeiten, die Microsoft zu bewältigen hat und auch Anwender und Anwenderinnen, die von einem Kalender in einen anderen umrechnen müssen:

Also wieder ganz schnell zurück zu Deutsch / Deutschland:

Übrigens: wer meinen Vortrag ansehen möchte – man findet ihn auf:

https://www.youtube.com/watch?v=9UI9IwDVlGc

und ein Dankeschön an Faraz Shaikh für seinen Hinweis zu seinem Video, indem er erklärt, wie man ein Datum aus dem Hijri-Kalender in ein Datum des gregorianischen Kalenders konvertiert:

https://www.youtube.com/watch?v=Du3uuhKel5w

Schade, das es so teuer ist, Leute auf den Mond zu schießen. Ich hätte da ein paar.

Hallo René,

ich habe ein für mich unerklärliches Excel Phänomen in der Version 365.

In der Zelle C1 habe ich berechnet: 6*7=42 (s. Anlage).

Dieses Ergebnis habe ich zum Datum 18.07.2017 addiert und erhalte das Datum 24.01.6837.

Addiere ich 42 als Zahlenwert zum Datum 18.07.2017, erhalte ich das richtige Ergebnis 29.08.2017.

Hast Du eine Erklärung?

Liebe Grüße
  Traudl

Hi Traudl,

du MULTIPLIZIERST das Datum (18.07.2017 = 42.934) mit 42

42.934 x 42 = 1.803.228 = 24.1.6837

Stimmt schon!

Rene

Oh je René, danke. 

Dass ich multipliziert habe, ist mir gar nicht aufgefallen. Zudem habe ich die Berechnung mehrfach wiederholt.

Wahrscheinlich Corona Blackout.

Sorry, dass ich Dich mit so einer Lapalie belästigt habe.

Liebe Grüsse 

Traudl 

Mir ist egal ob ich in die Hölle oder in den Himmel komme. Ich habe auf beiden Seiten Freunde.

Word ist manchmal auch recht anstrengend.

In der letzten Word-Schulung erkläre ich wie man ein Formular mit Eingabefeldern erstellt.

Ich erkläre, dass man die Felder auf ein gültiges Datum begrenzen kann:

Wir testen:

Prima! 2. Test:

Der dritte Test funktioniert. Man kann das Datum auch in der Form 1-10-20 (wie in Excel) eingeben:

Allerdings aus der Eingabe 31-11-20 wird:

Und jetzt das kleine Erstaunen: Verboten sind Angaben wie:

1–1
1,,1
31.11.2020
1o.1o.2o
l0.l0.2020

Jedoch wird umgewandelt:

1,1 wird zu 01.10.2020
31-11-20 wird zu 20.11.1931
1-1-1-1 wird zu 01.01.2001

Noch erstaunlicher ist die Begrenzung auf Zahlen:

Während Texte stillschweigend gelöscht werden (ohne Warnhinweis!) wird konvertiert:

1,,50 wird zu 0,01 € (5,
ebenso: 1,0,5
1.50 wird zu 150 €
1-50 wird zu 150 €
1oo zu 1,00 €
l00 zu 0,00 €

Sehr seltsam. Sehr inkonsequent und inkonsistent. Vor allem das stillschweigende Löschen von falschen Eingaben kann dazu führen, dass ein Formular nicht korrekt ausgefüllt wird.

Na klar, kann man zum Frühstück schon Pralinen essen. Steht doch drauf: „Moin, Cherie“

Hallo Rene,

bin gerade ein wenig verwirrt aufgrund der Formel Nettoarbeitstage.INTL, vermutlich liegts bei mir und nicht an der Formel.

Ich nehme hier einfach mal den 12.10.2020 als Ausgangs- und den 19.10.2020 als Enddatum. Die Formel in E2 ist =NETTOARBEITSTAGE.INTL(A2;B2;11), mit dem Parameter 11 möchte ich die Sonntage ausklammern.

In D2 steht lediglich =TAGE(B2;A2).

Müssten sich die beiden Werte nicht eigentlich unterscheiden, da ein Sonntag dazwischen liegt?

Wenn ich das Ausgangsdatum weiter in die Vergangenheit setze, dann gibt es eine größere Diskrepanz zwischen den beiden Formelergebnissen, z.B. beim 01.09.2020

Was mache ich denn falsch, weißt du das?

Viele Grüße, Dominic

Moin Dominic,

schau mal:

TAGE rechnet wie die Differenz wie DATEDIF: Ende – Anfang. Klar: 19 – 12 = 7.

NETTOARBEITSTAGE und NETTOSARBEITSTAGE.INTL ist die Anzahl der Arbeitstage in einem Datumsbereich außer Sa/So (NETTOARBEITSTAGE) oder außer dem gewählten Tag / den gewählten Tagen.

Heißt: wenn Anfang und Ende gleich sind liefert TAGE immer 0, NETTOARBEITSTAGE meistens 1 – eben: ein Tag liegt in diesem Zeitraum.

Für deinen größeren Zeitraum ist das auch korrekt:

Liebe Grüße

Rene

Hormone – ab in die Ecke! Und nachdenken, was ihr da gerade gemacht habt!

Excelschulung. Ich zeige Tastenkombinationen. Mit [Strg] + [A] markiere ich einen zusammenhängenden Bereich:

Mit [Umschalt] + [Strg] + [#] „springe“ ich die vier Ecken des Bereiches an. Warum? So kann ich schnell berausfinden, ob Leerzeilen oder Leerspalten vorhanden sind; ob sich Teile der Liste darunter oder daneben befinden – getrennt durch eine leere Spalte oder Zeile.

Eine Teilnehmerin meldet sich und sagt, das in ihrem Bereich plötzlich nur Datumsangaben zu sehen sind:

Ich schmunzle und antworte: „Sie müssen [Umschalt] + [Strg] + [#] drücken. Sie haben nur [Strg] + [#] gedrückt! Das formatiert die Zellen von Zahlenformat „Datum“.

Hätte der Mensch die Sprungkraft eines Flohs, könnte er 90 Meter weit und 50 Meter hoch springen. Stellen Sie sich mal vor, was passieren würde, wenn im Supermarkt eine zweite Kasse geöffnet wird!

Heute mal nichts zu nörgeln. Heute bin ich begeistert.

Auf der Seite von Sam Radakovitz

http://samradapps.com/

habe ich einen Date-Picker gefunden. Sehr praktisch das Teil – es wird in der Registerkarte „Start“ angezeigt und schlägt bei Datumsangaben den Assistenten vor:

Diesen Hinweis habe ich auf dem excel-ticker vom Mourad Louha entdeckt:

http://www.excel-ticker.de

genauer – auf:

http://www.excel-ticker.de/wolfram-datentypen-in-excel-verwenden/?fbclid=IwAR2QsMJlt4q5m7K5rQhfMEwPxYlzWJ1IPr2H-OWYfa6US9monQpaN4EXkMQ

Schluss mit Binsenweisheiten und anderen unlustigen Sprüchen in der Headline!!

Verständlich, aber dennoch erstaunlich: Wenn eine Liste Datumsangaben in der ersten Zeile hat und wenn man diese Liste in eine (intelligente/dynamische) Tabelle verwandelt, so werden diese Datumsangaben zu Text. Klaro – Feldnamen/Überschriften müssen Text sein.

Beim Zurückkonvertieren in einen Bereich bleiben natürlich die Datumsangaben als Text stehen:

Ein Träumchen

Daumen hoch für Johannes Curio (http://curio-consulting.de/), der auch als Referent bei unseren Exceltagen zur Verfügung stand. Er hielt informative, amüsante und spannende Referate über Pivot, Power Query und PowerBI.

Spannend fand ich seine Bemerkung, dass man in PowerQuery niemals den Automatismus „Changed Type“ verwenden sollte. In vielen Fällen wird der Datentyp nicht richtig erkannt, so seine Bemerkung.

Dies demonstrierte er anhand eines CSV-Imports am Beispiel einer Datumsspalte. Seine Empfehlung: diesen Schritt löschen und selbst das Datenformat definieren:

Dann klappt es:

Echte Männer fahren Traktor

Mit Lorenz Hölscher (http://www.software-dozent.de/) haben wir für unsere Exceltage (www.munich-office-group.de) 2019 einen hervorragenden Dozenten gefunden. Er hat über Themen wie sichere Datenqualität und Dateneingabe, Verbesserungen im VBA-Code referiert. Und er stellte die neuen Array-Funktionen vor, die in Excel nun Einzug gefunden haben.

Auch er kann sich manchmal freche Bemerkungen nicht verkneifen, wenn er fragt, warum in Excel die Funktion TEXT in VBA Format genannt wurde – warum HEUTE() in Access Datum() heißt … Und er machte Witze über Praktikanten, die so etwas implementiert haben – solche Witze machen seine Vorträge nicht nur lehrreich, sondern auch amüsant.

Beim Kampf Kopf gegen Herz verliert immer die Leber.

Hallo Rene,

ich habe diese kleine Datei gebastelt, um einen anderen Fachbereich zu unterstützten.

Der Fachbereich wünschte die Tabelle um folgende Funktion zu erweitern:
„Wie viele Arbeitstage (abzüglich der Feiertage/WE) sind seit einem frei setzbaren Datum bis heute vergangen?“

Das stellt mich an sich nicht vor ein Problem. Ich möchte aber verhindern, dass unvorsichtiger Gebrauch die Tabelle zerschießt, weswegen ich das Datum in fester Struktur/Format einstellen lassen möchte.

Auch das war nicht das Problem. Ich habe eine Liste genommen und Datenüberprüfung mit Dropdown. Das gefällt mir aber selber nicht. Ich hätte gerne so einen Pop-Up-Kalender oÄ.
Das Steuerungselement Microsoft Date/Time Controller haben wir nicht hinterlegt. Geht das auch anders?

Liebe Grüße

Florian

Hallo Florian,

Ich würde das Dropdown verwenden. Der Grund: Wenn du ein Steuerelement verwendest, muss sichergestellt sein, dass dieses Steuerelement auf jedem Zielrechner vorhanden ist. Ich habe mal nachgesehen: bei euch sind sehr wenige Steuerelemente installiert. Also: Finger weg – verwende bitte nur die Excel-Hausmittel – sonst erhält die Anwenderin/der Anwender beim Öffnen der Datei lustige Meldungen …

Hallo Rene,

Mit Dropdown hast du recht, wirkt halt nur unprofessionell, deswegen die Idee mit dem Kalender analog zu Word.

Seit Florian Silbereisen zum Traumschiff gegangen ist, sympathisiere ich mit Eisbergen.

Hallo, Herr  Martin,

Das ist ja schon prima – bei mir zeigt die x-Achse nur Zahlen mit Schrittweite 0.5 Tage an, auch bei Umformatierung werden die x-Werte ignoriert, wenn man dann den Wertebereich der x-Achse ändert, ist die Grafik weg 🙁 Die Daten sind 21. Jahrhundert, etwa 90 Tage.

Anbei das Excel mit dem beschriebenen Problem. Das rechte Diagramm ohne Linien ist eine Kopie des linken mit korrekt formatierter X-Achse.

*lach*

da haben Sie etwas Lustiges gemacht:

ich setze auf Ihren Daten ein Diagramm auf und wundere mich, dass in der x-Achse nicht die Datumswerte, sondern 1, 2 und 3 angezeigt werden.

Ich formatiere die x-Achse als Datum und erhalte die Werte 01.01.1900, 02.01.1900, …

Ich werfe einen Blick auf Ihre drei Datumsangaben – sieht alles okay aus. Ich verbreitere die Spalte – und da haben wir es: die Werte stehen linksbündig – das heißt Excel, ein Mensch oder eine Maschine hat Text „unter“ die Datumswerte geschoben. Deshalb kann Excel diese Angaben nicht als Datumszahl interpretieren und verwendet 1, 2 und 3.

Umgekehrt: Wenn Sie nun die Achsenskalierung vom 01-10-2018 bis 28-02-2019 laufen lassen, beiden sich diese drei kleinen Zahl gaaaaaanz weit links.

Lösung: Doppelklick auf die einzelnen Datums-Zellen, damit es wieder ein vernünftiges Datum wird.

Wenn Sie das Phänomen häufig haben, werfen Sie einen Blick auf:

https://www.excel-nervt.de/sap-co/

schöne Grüße aus München

Rene Martin

PS: Jetzt muss ich unsere Exceltage vorbereiten, die im Oktober in München stattfinden werden.

 

Charisma? Oh Gott! Wo hast du dir das denn geholt?

Und schon wieder libreOffice Calc unterrichtet. Und schon wieder den Kopf geschüttelt.

Wenn man in Calc ein Datum eingeben möchte, so kann man dies – ebenso wie in Excel – über den Zahlenblock. Beispielsweise 19-11-18. Allerdings akzeptiert Calc nicht die Eingabe 19-11-2018. Und: die Grenzen für diese Eingaben sind 2001 bis 2031. Datumsangaben vor 2001 und Angaben nach 2013 muss man mit einem Punkt eingeben. Schade.

Übrigens bin ich nicht der einzige, der nörgelt. Heute fragte ein Teilnehmer nach einem Shortcut für Summe (wie in Excel: [Alt] + [=]). Gibt es nicht; kann man leider auch nicht anlegen. Leider kann man auch nicht aus dem Funktionsassistenten heraus Bereiche per Tastenkombinationen markieren. Alles ein bisschen hölzern und altbacken …

Wenn man gut sitzt, braucht man keinen Standpunkt.

Amüsant. Ich zeige in der Excelschulung, dass man ein Datum auch auf dem rechten Ziffernblock eingeben kann, also:

17-6-18

oder auch:

17-6

Das Jahr wird ergänzt; man müsste das Ganze umformatieren. Immerhin – Excel wandelt 17-6in ein Datum um.

Die Teilnehmer „spielen“ ein bisschen, probieren – bis ein Teilnehmer sich beschwert:

17.6.

funktioniert aber nicht. Tatsächlich – DAS wird nicht als Datum erkannt.

Schade – dann halt nicht!

i am not weird i am a limited edition

Es ist so schrecklich! Eigentlich ist das Problem einfach: eine Mitarbeiterin möchte wissen, ob beim Anwender Excel die deutsche oder englische Oberfläche eingeschaltet hat. Per VBA wäre dies kein Problem; allerdings wollen wir eine Lösung entwickeln, die auf Formeln basiert.

Wir beginnen:

=WENN(TEXT(DATUM(2018;1;1);“MMMM“)=“Januar“;“de“;“en“)

Wenn der erste Monat des Jahres „Januar“ heißt, bin ich Deutsch. Test: Excel wird auf englisch umgestellt:

Klar. die Ländereinstellung der Systemsteuerung ist noch immer „deutsch“ – deshalb ist der erste Monat Januar. Blöd zum Testen!

Zweiter Versuch:

=IF(ISERROR(TEXT(TODAY();“dddd“));“de“;“en“)

zeigt „en“ an. Bei der deutschen Oberfläche ebenso. Der Grund:

TEXT(HEUTE();“dddd“)

liefert „dddd“?!? Und eben keinen Fehler.

Noch ein Versuch:

=IF(ISERROR(INFO(„DIRECTORY“));“de“;“en“)

Auch hier weigert sich Excel hartnäckig „deutsch“ zu werden. Der Grund:

INFO(„DIRECTORY“)

funktioniert auch im Deutschen korrekt. Erst

=WENN(ISTFEHLER(INFO(„VERZEICHNIS“));“en“;“de“)

klappt. Das englische Excel kennt „VERZEICHNIS“ nicht. Zum Glück ist diese Funktion volatil, das heißt: wird beim Start von Excel neu berechnet.

Mehrsprachige Umgebungen sind die Hölle! Nicht nur in Excel … Und: das oben genannte Beispiel ist nur Spitze des Eisberges.

Kann ich so nicht beurteilen. Müsste ich nackt sehen.

Man zwingt mich erneut Calc zu unterrichten. Und ich entdecke wieder ganz viele schreckliche Dinge – viel schlimmer als man es sich in Excel jemals vorstellen kann.

Ich zeige den Teilnehmerinnen und Teilnehmern, dass man mit einem Minuszeichen bequem auf der rechten Zahlentastatur ein Datum eingeben kann, also:

20-11-17

Die erste Stolperfalle – man darf nicht

20-11-2017

eintragen – dies wird nicht als Datum erkannt!

Ein Teilnehmer versucht es mit seinem Geburtsdatum – padautz: es funktioniert nicht. Und tatsächlich: libreOffice Calc akzeptiert diese Schreibweise nur bei Datumsangaben zwischen 2000 und 2031.

Ein Text ist ein Text ist ein Text

Was passieren kann, wenn man einen Text als Text formatiert – darauf habe ich schon hingewiesen. Auch was passiert, wenn man einen (langen) Text als Buchhaltung formatiert:

Amüsant ist dagegen auch folgendes Phänomen: Wenn man einen Text als Datum, Prozentwert oder Währung formatiert:

und dann mit der Funktion LÄNGE weiter rechnet – allerdings mit mindestens zwei Rechenoperationen (beispielsweise LÄNGE – 1 oder LÄNGE x 1), dann wird das Zahlenformat übernommen:

Erstaunlicherweise: FINDEN und SUCHEN liefern auch Zahlen – sie übernehmen jedoch nicht das Zahlenformat.

Betrunkene sagen die Wahrheit. Blöd, das sie immer so nuscheln.

Hallo Rene,

bitte wieder Tipparbeit bei der schon bekannten Tabelle.

Durch die Hinweise auf VBA in manchen Vorträgen habe ich mir einige der Schulungen angesehen.
Ach oh je 🙁
Es ist toll, dass man sich nachdem das Programm feriggestellt ist arbeit erspart. Die Suche im Internet nach geeigneten Code hat natürlich nicht zu einem Ergebnis geführt.
Dazu braucht man ein erweitertes Grundwissen das ich nicht habe.

Meine Bitte und Anliegen:
Kannst Du mir bitte VBA Code für die Tabelle mit der Datumskorrektur schreiben?

Das alte Datum soll ausgeblendet werden.
Das einfügen der Spalte für das neu formatierte Datum muss variable sein. Es kommt neuerdings auch eine Tabelle mit Point vor dem Datum.

Bitte ein alphabethisches Inhaltsverzeichnis mit Link auf die aktuellen Tabellen.

Zu VBA
Kannst Du mir ein Buch empfehlen?
Kann man in den Büchern, ähnlich wie in denen von Excel, bestimmte Code für Funktionen (kopieren, einfügen, Formeln in VBA) finden?

Im Internet habe ich für das Einfügen einer Spalte Code entdeckt. Wollte aber eine variable Möglichkeit, die ich nicht gefunden habe. Mitbekommen habe ich, dass man Variable definieren muss. Wie diese jedoch bezeichnet werden habe ich nicht herausgefunden. Die Zellen werden in Ziffern aufgeteilt. Buchstaben und Zahlen für die Bezeichnung der Zellen habe ich in anderen Code entdeckt. Erwähnt wurde auch der Unterschied zwischen USA und dem localen Code.

Mit besten Grüßen
Peter

#####

Hallo Peter,

hier der Code:

Sub MonateErsetzen()
Dim strSpalte As String
Dim i As Integer
Dim strMonateDeutsch
Dim strMonateEnglisch

strMonateDeutsch = Array(„Jänner“, „Februar“, „März“, „April“, „Mai“, „Juni“, „Juli“, „August“, „September“, „Oktober“, „November“, „Dezember“)
strMonateEnglisch = Array(„January“, „February“, „March“, „April“,
„May“, „June“, „July“, „August“, „September“, „October“, „November“,
„December“)

strSpalte = InputBox(„In welcher Spalte sollen die Datumswerte ersetzt werden?“)

For i = 0 To UBound(strMonateDeutsch)
ActiveSheet.Columns(strSpalte & „:“ & strSpalte).Replace What:=strMonateEnglisch(i), Replacement:=strMonateDeutsch(i), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next i

End Sub

Wie kommt man dazu? Zeichen mit dem Makrorekorder auf – beispielsweise ersetze „January“ durch „Januar“. Dann erhältst du folgenden Code:

Sub Makro1()

‚ Makro1 Makro


Selection.Replace What:=“February“, Replacement:=“Februar“, LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub

Nun – und da bauen wir ein bisschen Makro außenrum.

Ich empfehle keine Bücher. Jeder hat eine andere Art zu lesen und zu lernen.
Geh in eine große Buchhandlung, hole einen Meter VBA-Literatur raus, blättere sie durch und bestelle dann das Buch, das dir am besten gefallen hat, in einer kleinen Buchhandlung.

Tipp: ich würde einen Kurs besuchen (Volkshochschule oder privater Anbieter). Dort bekommst du in kurzer Zeit am schnellsten die wichtigste Informationen. Dozent zeigt auch, was man falsch machen kann und hilft.
Liebe Grüße

Rene

#######

Hallo Rene,

Danke.

Leider hilft mir dieser Code nicht weiter nachdem nur der Monatsname in deutscher Schreibweise umsetzt wird. Benötigt wird ein ‚echtes‘ Datum.

In der Spalte C steht einmal ein echtes Datum und dann das Datum als Text.

In der neuen Spalte D die eingefügt wurde, hast du mit der untenstehenden Formel ein ‚echtes‘ Datum erstellt.

=WENN(ISTZAHL(C2);C2;DATUM(RECHTS(C2;4);VERGLEICH(TEIL(C2;SUCHEN(“ „;C2)+1;LÄNGE(C2)-8);{„January“;“February“;“March“;“April“;“May“;“June“;“July“;“August“;“September“;“October“;“November“;“December“};0);LINKS(C2;2)))

erstellt.

 

Bitte im VBA Code umsetzen, dass eine neue Spalte erzeugt wird, das Datum nach deiner Formel eingesetzt wird und die Spalte mit den nicht brauchbaren Angaben ausgeblendet wird.

Deine Vorschläge werde ich befolgen. Schau mal in die Buchhandlung was dort aufliegt. Ein Kurs ist auch eine gute Idee.

Besten Dank,

Peter

#####

Hallo Peter,

probiere es aus!

Durch das Ersetzen „erkennt“ Excel ein Datum und wandelt in eine Datumszahl um

LG ::  Rene

I never read. I just look at pictures (Andy Warhol)

Ein Teilnehmer der Excelschulung gestern hat es ausprobiert:

Trage Sie ein Datum ein, beispielsweise [Strg] + [.] -> das aktuelle Datum. In einer anderen Zelle berechnen Sie den Tag davor, also:

=A1-1

Was passiert, wenn das Datum nun 01.01.1900 lautet? Wissen Sie es? Probieren Sie mal aus, welcher Tag in Excel vor dem 01. Januar/Jänner 1900 kam.

Breakfast is the most important drink of the day!

Hallo Renè,

kannst du mir bitte wieder helfen?

Es dreht sich um das Datum.

Aus dem Internet habe ich diese Tabelle kopiert. Einmal wird ein richtiges Datum und dann ein Datum in Textformat angezeigt. Bei der Textform fehlt nach dem Tag der Punkt.

Die Formatierung soll natürlich österreichisch sein ;-).  Datum und Uhrzeit von dir haben mir bei dieser Tabelle auch nicht weiter geholfen. Zumindest habe ich nichts entdeckt.

Die Liste wird mit einer anderen verglichen um zu sehen ob der Start gemeldet wurde.

Bedanke mich für deine Unterstützung,

mit bestem Gruß

Peter

Hallo Peter,

hübsche Fingerübung. Kommst du mit der Lösung klar?

In Spalte E steht das Datum als Datum; in F als Text.

Übrigens: Hübsches Problem – da im Englischen April, August, September und November genauso heißen wie bei uns, machen diese Monate keine Probleme.

schöne Grüße aus dem Land, wo die Jänners Januare heißen

Rene

Die rechte Formel sieht wie folgt aus:

{=TEXT(WENN(ISTZAHL(D2);D2;DATUM(RECHTS(D2;4);VERGLEICH(TEIL(D2;SUCHEN(“ „;D2)+1;LÄNGE(D2)-8);{„January“;“February“;“March“;“April“;“May“;“June“;“July“;“August“;“September“;“October“;“November“;“December“};0);LINKS(D2;2)));“TT.MMM JJJJ“)}

die linke ohne die Funktion TEXT.

Meine geheime Superkraft: Ich kann mich selber völlig aus dem Konzept bringen, obwohl ich vorher gar keins hatte.

Ich bin jeden Tag aufs Neue verblüfft.

Kennen Sie das? Ich erstelle eine Pivottabelle und darf dort ein „Berechnetes Element“ hinzufügen.

Statt gruppierten Textinformationen verwende ich ein Datumsfeld. Nun darf ich kein „Berechnetes Element“ hinzufügen. Verstanden.

Ich lösche das Datumsfeld und füge erneut ein Feld hinzu, bei dem Texte gruppiert werden. Ich darf immer noch kein „Berechnetes Element“ hinzufügen.

Pivot „merkt“ sich den Gruppierungsmodus. Frech – gell!

Alle sagten immer das geht nicht, dann kam jemand, der das nicht wusste, und hat es einfach gemacht!

Hallo René,

wie geht es Dir? Bist Du gut wieder nach München gekommen nach dem Aufenthalt bei uns hier in Leipzig?

Ich habe ein Problem in Excel und wenn Deine Zeit es mal erlaubt, dann bitte helfe mir bei der folgenden Angelegenheit.

Ich möchte gern bei Excel in einer Zelle eine Datumsauswahl (Aktives Steuerelement) einfügen, aber ich kann unter Entwickler-Tools kein „Microsoft Data and Time Picker Control“ finden.

Evtl. gibt es ein „Picker“, welchen ich dann formatieren kann…

Ich komme nicht zur Lösung und möchte es gern in meinem Excel-Sheet integrieren.

Das möchte ich erreichen

Vorab vielen Dank für Deine Bemühungen!

Viele Grüße nach München.

Daniel

#######

Hallo Daniel,

Ich rate dir von weiteren Steuerelementen ab. Der Grund: Sie müssen auf dem PC installiert sein.

Wenn du kein solches Element hast (beispielsweise weil kein Visual Studio installiert ist) – dann hast du es auch nicht. Könnte man runterladen aus dem Internet.

Jedoch: wenn du die Datei weitergibst, muss dieses Steuerelement auf dem Zielrechner auch installiert sein. Sonst geht es nicht.

Also doch lieber eintippen.

Weißt du noch: ein Datum kann man auf dem Zahlenblock beispielsweise 13-05-2017 eingeben.

Sauer macht lustig, der Wald lacht sich tot!

Der Problem mit dem Datum hat mich gestern noch beschäftigt.

In der Zelle D3 steht nichts. Erstaunlicherweise liefert =JAHR(D3) keinen Fehler (wie ich vermutet hätte), sondern 1900. Warum?

Die Antwort: Schreiben Sie in eine Zelle das Datum 05.01.1900. Subtrahieren Sie von diesem Datum die Zahl 1. Setzen die Formel fort. Nach dem 01. Januar 1900 folgt der 00. Januar 1900. Dann ein Fehler:

Und das ist der Grund, warum man von einer leeren Zelle die Jahresinformation auslesen kann. Auch JAHR(0) liefert das Jahr 1900. Steht in der Zelle allerdings ein leerer Text („“) oder #NV, dann ist ein Fehler die Folge:

Das heißt im Umkehrschluss: WENNFEHLER(JAHR(D3);““) fängt keinen Fehler ab, wenn die Zelle D3 nicht gefüllt ist. Lediglich wenn in der Zelle kein Datum, also Text steht. Mit WENNFEHLER kann man diese Information also nicht abfangen.

Heute lebe ich. Morgen putze ich vielleicht.

Ich habe mich heute sehr amüsiert. Ich war in einer großen Firma, die Sie auch kennen. Dort haben mir Mitarbeiter eine große Exceltabelle gezeigt, mit der Bitte, ihnen die Formeln zu erklären und möglicherweise zu verbessern. Das Grundproblem tauchte an sehr vielen Stellen auf: In zwei unterschiedlichen Spalten stehen Datumsangaben. Allerdings: nicht in jeder Zelle.

Es sollen die Datumsdifferenzen berechnet werden. Allerdings nicht Ende – Anfang, da die leeren Zellen ein Ergebnis verfälschen würden. Nun hat ein Kollege – wahrscheinlich über Jahre – verschiedene Formeln eingetragen:

  • =WENN(D2>=1;D2-C2;““)

Ist okay – hier habe ich nichts zu nörgeln.

  • =WENN(D2>=1;D2-C2;“ „)

Das Leerzeichen stört mich; würde ich nicht machen – besser: „“.

  • =WENN(D2>=1;DATEDIF(C2;D2;“d“);““)

Warum einfach, wenn es auch umständlich geht. D2-C2 entspricht DATEDIF(C2;D2;“d“).

  • =WENNFEHLER(D2-C2;““)

Ganz schlecht: D2-C2 liefert keinen Fehler, wenn eine der beiden Zellen leer ist. Das Ergebnis ist beispielsweise -42780.

  • =WENN(ISTFEHLER(D2-C2);““;D2-C2)

Bis Excel 2003 gab es noch nicht die Funktion WENNFEHLER – bis dahin musste man WENN(ISTFEHLER(… schreiben. Falsch und überflüssig!

  • =WENN(UND(C2<>““;D2<>““);D2-C2;““)

Gut: beide Zellen werden überprüft!

Die Funktion ISTZAHL habe ich in der Tabelle nicht gefunden.

Wir haben uns amüsiert, weil das gleiche Problem von einem Anwender auf verschiedene Arten gelöst wurde. Das ist nicht konsistent und auch nicht nachzuvollziehen. Aber man kann ja mal vermuten, was die Ursache des Formelwandels war …

Denken ist wie googeln – nur krasser.

Amüsiert war ich schon. In einer Firma sollte ich letzte Woche Excel-Formeln anpassen. Man erklärte mir, dass jeder Auditvorgang ein Revisionsdatum hat. Möglicherweise auch ein zweites und ein drittes. Wenn es ein drittes Datum gibt, gibt es auch ein zweites. Also: die Tabelle ist gefüllt: entweder 1. Datum oder 1. und 2. oder 1. und 2. und 3. oder alle vier Spalten sind mit einer Datumsinformation gefüllt.

20170129Anzahl

Ein Kollege hatte eine Formel erstellt:

=WENN(H2=““;1;WENN(I2=““;2;WENN(J2=““;3;4)))

Meine Aufgabe war es diese Formel für weitere Datumsangaben anzupassen. Ich war etwas irritiert.

=ANZAHL(G2:J2)

hätte das Gleiche getan. Und ist leichter anzupassen. Die Teilnehmer waren begeistert und glücklich.

Satzzeichen können Leben retten: „Komm wir essen Opa!“

Amüsante, aber erklärbare Sache:

Ein Datum kann benutzerdefiniert, beispielsweise mit

TTTT, “ den “ TT. MMMM JJJJ

formatiert werden:

20160801Komma01

Ändert man das Format in:

„München“, „den“ TT.MM.JJJJ

erhält man eine Fehlermeldung:

20160801Komma02

Der Grund: JETZT wird das Komma als Zahlentrennzeichen interpretiert, wie man leicht zeigen kann, wenn man eine Zahl so formatiert:

Lustiges Ergebnis

Lustiges Ergebnis

Wenn ich während der Arbeit mit Excel sterbe und in die Hölle komme, wie lange wird es wohl dauern, bis ich merke, dass ich nicht mehr vor Excel sitze?

Mit PowerPivot können Felder aus verschiedenen Tabellen des Datenmodells verknüpft werden. Excel verlangt dabei, dass mindestens eine Tabelle nur eindeutige Werte besitzt (die 1-Seite der 1:n-Beziehung). Falls dies nicht der Fall ist, wird es mit einer Fehlermeldung quittiert.

Bedauerlicherweise werden nicht die Datentypen überprüft. So ist es möglich, dass man Text mit Zahl oder Datum verknüpfen kann. Diese Funktion hätte man auch integrieren können …

Geht nicht!

Geht nicht!

Text mit Zahl - das geht schon !?!

Text mit Zahl – das geht schon !?!

Komisch?

Wirklich komisch. In unserer Firma gibt es Abteilungen. Sie tragen Nummern der Form 1 oder 1.5 oder 1.3.1. Erstaunlicherweise zeigt Excel bei „1“ und bei „1.3.1“ grüne Ecken an. Bei „1.5“ allerdings nicht …

Viele grüne Ecken, aber nicht überall ...

Viele grüne Ecken, aber nicht überall …

Die Antwort finden Sie, wenn Sie mit der Maus über das Smarttag fahren:

Unterschiedliche "Fehler"

Unterschiedliche „Fehler“

Die Antwort:

„1“ wir interpretiert als Zahl 1, die als Text formatiert wurde.

„1.3.1“ wird interpretiert als Datum: 01.03.2001, das als Text formatiert wurde.

„1.5“ – hum – keine Ahnung – eigentlich interpretiert es Excel als Datum (01.05. im aktuellen Jahr). Warum hier kein Smarttag erscheint – keine Ahnung …

Am Ende des Geldes bleibt immer so viel Monat übrig

Hallo Herr Martin,

ich finde in Excel einfach keine Funktion QUARTALSENDE. Konkret: Ich benötige den letzten Tag (als Datum) des Quartals, in dem sich ein Datum befindet. Also beispielsweise:

1.1.2016 -> 31.03.2016

2.2.2016 -> 31.03.2016

5.5.2016 -> 30.06.2016

und so weiter.

Ist das Quartal nicht zu Ende?

Ist das Quartal nicht zu Ende?

Das ist richtig: DIESE Funktion gibt es in Excel leider nicht. Man muss sie zusammenbauen. Wenn in A1 das Datum steht, dann beispielsweise so:

=DATUM(JAHR(A1);MONAT(A1)-REST(MONAT(A1)+2;3)+3;1)-1

oder so:

=DATUM(JAHR(A1);OBERGRENZE(MONAT(A1);3)+1;1)-1

(beide Funktionen suchen den letzten Monat des Quartals, addieren 1 (also verwenden den nächsten Monat) und von diesem Monat den ersten Tag. Davon wird 1 abgezogen. Oder auch so:

=MONATSENDE(A1;REST(3-MONAT(A1);3))

Man ermittelt die Anzahl der Monate, die zu dem Datum dazu gezählt werden muss.

Frage an Radio Eriwan

Excel-Schulungen sind klasse. Vor allem, wenn andere Trainer und Gruppen vor mir im Schulungsraum waren und die Rechner nicht zurückgesetzt wurden. Oder auch wenn Teilnehmer irgendwo rumklicken und dann behaupten, dass sie nichts gemacht haben.

Heute fragte mich ein Teilnehmer, warum bei ihm nicht „Datum, kurz“ und „Datum, lang“ in der Liste der Zahlenformate steht. Ich glaubte ihn zuerst nicht – aber er hatte recht:

Nur Datum

Nur Datum

Die Ursache dieses merkwürdigen Phänomens war schnell gefunden: jemand hatte das Gebietsschema auf „Armenien“ umgestellt …

Wo bitte ist Armenien?

Wo bitte ist Armenien?

Was du heute kannst besorgen, …

Ich liebe die Tastenkombination [Strg]+[.], mit der ich ein Datum in eine Zelle einfügen kann. Sogar, wenn ich Text in die Zelle schreibe, also beispielsweise „überprüft am [Strg]+[.]“.

Seltsam – ich kann in einem Kommentar diese Tastenkombination verwenden, aber nicht in der Kopfzeile oder Fußzeile. Ich möchte nicht die Funktion „Datum“ verwenden, da dies das aktuelle Datum einfügt. Ich hätte gerne das Datum festgeschrieben und mit dem Umweg über das Tippen des Datums erspart.

Kein heute in Sicht

Kein heute in Sicht

Das ist richtig: an einigen wenigen Stellen funktioniert sie – an vielen leider nicht. Dazu gehören:

  • Kopf- und Fußzeile
  • Suchen und Ersetzen
  • Formen
  • SmartArts
  • Textfelder

Dafür funktioniert die Tastenkombination in Diagrammen und Kommentaren.

today is only yesterday’s tomorrow

Hallo Herr Martin,

ich erhalte regelmäßig Daten von einem System (ORBIS). Diese muss ich anschließend filtern. Nun passiert es regelmäßig, dass er in Den Spalten, in denen sich ein Datum befindet, nicht „Datumsfilter“ anzeigt, sondern „Textfilter“. Ich benötige aber Datumsfilter. Was ist da los?

Falsches Datum

Falsches Datum

Die Antwort: Viele Datenbanksystem „schieben“ beim Excelexport Text unter die Zahlen oder Datumsangaben. Erstaunlicherweise kann man das weder sehen noch per Formatierung ändern.

Die Lösung: Sie müssen diese „falsche“ Datumsspalte markieren und mit dem Assistenten Daten / Text in Spalten in das überführen, was eigentlich drin ist.

Weitere Lösungsansätze finden Sie in meinem Artikel vom 09. Jan 2015 „SAP & co

jetzt oder nie!

Das ist seltsam: Ich kenne die beiden Tastenkombinationen [Strg] + [.] und [Strg] + [:]. Damit wird das aktuelle Datum und die aktuelle Uhrzeit in die Zelle geschrieben. Was mich jedoch erstaunt ist, dass die erste Zelle als „Datum“ formatiert wird, die zweite „benutzerdefiniert“. Warum?

DatumUhrzeit20151014_1

Datum und Uhrzeit

Datum und Uhrzeit

Zugegeben: das ist ein bisschen verwirrend. Allerdings: Wenn Sie die Uhrzeit mit 14:00 eintragen, wie sie auch „benutzerdefiniert“ formatiert – in der Form „hh:mm“. Das Format „Uhrzeit“ setzt Stunde:Minute:Sekunde voraus. Wenn Sie es so eingeben, wird es als „Uhrzeit“ formatiert. Sonst eben „benutzerdefiniert“. Übrigens erhalten Sie auch das Zahlenformat „benutzerdefiniert“, wenn Sie ein Datum in der Form 24-12 oder 24.12 eintragen.

Ist heute schon der 33.?

Was habe ich falsch gemacht? Ich wollte das heutige Datum in der Form Jahr – Monat – Tag darstellen, aber Excel macht aus dem Tag die Zahl 33?

Falsches Datum

Falsches Datum

Die Antwort: Wenn Sie das benutzerdefinierte Zahlenformat anschauen, dann sehen Sie beim Tag nicht „TT“, sondern „T T“. Zwischen den beiden Ts befindet sich ein Leerzeichen. Deshlab wird der Tag zwei Mal angezeigt – nicht als 03. Oktober, sondern als 3 3. Oktober.

Nicht konsequent, aber nützlich

Ist Ihnen folgendes Phänomen schon aufgefallen? Wenn Sie in eine Zelle „Mai 2015“ eintragen, wird es als Datum erkannt. Excel wandelt es intern als 01.05.2015 um und zeigt Mai 15 an. Okay. Wenn Sie es herunterziehen, wäre zu erwarten, dass er das „interne Datum“, also den 01. Mai weiterzählt zum 02. Mai, 03. Mai, … Nein! Excel verwendet hier die an der Oberfläche sichtbare Formatierung Mai 15 und zählt die Monate weiter. Nicht logisch, nicht konsequent, aber praktisch!

Datum weiter zählen

Datum weiter zählen

Manchmal nervt er

Natürlich weiß, dass ich eine Abteilungsnummer 3.2 oder Artikelnummer 12-11 als Text formatieren muss. Bei 35.1 oder 9-9-9-9 „versteht“ Excel, dass es sich hierbei um kein Datum handeln kann. Aber dass Excel behauptet, ich hätte ich mich bei der Eingabe von -3.12 vertippt, das ist doch frech, oder?

Warum versteht er das nicht? Das ist doch gar kein Datum!

Warum versteht er das nicht? Das ist doch gar kein Datum!

Plötzlich Datum …

Hallo Herr Martin,

ich hatte bei Ihnen im Jahr 2013 einen Excel Kurs 😉

Leider bin ich jetzt an meine Grenzen gestoßen… 🙁

Habe von einem Kunden aus China „.txt“ Dateien mit sehr vielen Daten erhalten. (siehe Anhang)

Diese wollte ich nun ins Excel importieren um die Daten entsprechend grafisch (Kurve, Diagramme) darzustellen.

Die ersten 54 Zeilen werden auch korrekt importiert (dargestellt). Jedoch ab Zeile 55 Spalte 1 stellt er die „ursprünglichen“ Daten teilweise als Datumsformat dar.

Ich möchte jedoch alle Zellen als reine Daten (Zahl) im Excel haben.

Vielleicht können Sie mir helfen?

Besten Dank im Voraus J

Plötzlich Datum

Plötzlich Datum

Hallo Herr N.,

Sie müssen beim Importieren der Liste beim letzten Schritt angeben, dass die Informationen nicht als Datum (Standard) interpretiert werden sollen, sondern als Text. Dann klappt es.

Das gleiche Ergebnis haben Sie, wenn Sie in eine Zelle 0.84 eintragen. Nichts passiert, weil Excel das nicht als Datum „versteht“. Jedoch bei 1.2 „denkt“ er, dass es hierbei um ein Datum handelt. Die Lösung: VORHER als Text formatieren:

liste20150501

So klappt der Import

So klappt der Import

Falsche und richtige Schalttage

Haben Sie einmal folgende amüsante Sache versucht? Tragen Sie in eine Zelle das „falsche“ Datum 29-2-2015 ein. Excel „sucht“ eine interne Zahl dazu; findet keine und stellt das ganze als Text linksbündig in der Zelle dar. So weit, so klar. Wird diese Zelle nun nach unten gezogen, wird die „letzte“ Zahl 2015 weiter gezählt. Auch noch klar. Allerdings existiert der 29-2-2016 (und natürlich der 29-2-2020, …). Obwohl die Zelle mit dem Zahlenformat „Standard“ formatiert ist, wandelt Excel dieses Datum nicht als Datum um. Irgendwie „merkt“ er sich die Textinformation der ersten „falschen“ Zelle. Erst ein Doppelklick auf die Zelle und ein Verlassen mit [Enter] oder [Tab] wandelt nun das Datum in ein Datum um.

Schalttage ...

Schalttage …

Januar geht nicht

Wenn ich in meinem Excel den Text „Januar 2015“ eintrage, steht Jan 15 in der Zelle. Bei meiner Kollegin lässt er den Text „Januar 2015“ in Frieden. Warum?

Datum

Datum

Excel „erkennt“ das Datum „Januar 2015“ als Datum und formatiert es um. Wahrscheinlich ist bei Ihrer Kollegin in der Ländereinstellung nicht Deutsch/Deutschland eingestellt, sondern ein anderes Land (beispielsweise Österreich). Wenn Sie den Monatsnamen in der entsprechenden Sprache eingibt (bei Österreich „Jänner 2015“), wird er auch formatiert.

Die Windows-Ländereinstellung

Die Windows-Ländereinstellung

Visio

Es ist wunderbar, dass Visio einen Assistenten zur Verfügung stellt, mit dem man leicht die Daten, die man in Visio an die Shapes gebunden hat, exportieren kann. Leider haben unsere Büros Nummer, wie beispielsweise 1-18, 2-22 oder 4-07. Nach dem Export nach Excel wandelt Excel die Daten leider in Datumsinformationen um. Kann man das verhindern?

Visio exportiert und wandelt 1-04 in den 01. April um.

Visio exportiert und wandelt 1-04 in den 01. April um.

Da Sie den Assistenten nicht „aufbrechen“ können, müssten Sie ihn entweder nachprogrammieren (was sehr mühsam ist) oder vor der Büronummer ein Hochkomma (‚) eingeben. Dann wird die Information als Text übergeben. Das ist leider in vielen anderen Systemen auch der Fall – Excel interpretiert einige Zeichen so wie er sie versteht und nicht so, wie Sie es gerne hätten.

Excel rechnet falsch

Bei meinem Kollegen funktioniert es – auf meinem Rechner aber nicht!

Ein Kollege hat auf seinem Rechner eine Formel programmiert, die bei einem Geburtstagskind „happy birthday“ anzeigt. Wenn ich diese Datei bei mir öffne, dann sehe ich zwar die Geburtstagskinder aber auch noch viele andere. Warum?

So viele haben heute gar nicht Geburtstag!

So viele haben heute gar nicht Geburtstag!

Die Formel sieht folgendermaßen aus:

=WENN(TEXT(I2;“DD-MM“)=TEXT(HEUTE();“DD-MM“);“happy birthday“;““)

Wenn Sie genau hinschauen, fällt auf, dass das Datum in der Form DD-MM formatiert wurde, also day und month. Mit Sicherheit verwendet der Kollege eine englischsprachige Excelversion. Dort benutzt Excel DMY statt TMJ. Da diese Formatangabe als Text in Anführungszeichen in der Formel steht, wird sie nicht übersetzt (anders als beispielsweise die Formeln – aus SUM wird SUMME, aus VLOOKUP wird SVERWEIS, … Entweder Sie korrigieren die Formel in:

=WENN(TEXT(I2;“TT-MM“)=TEXT(HEUTE();“TT-MM“);“happy birthday“;““)

oder Sie schreiben es ohne die Funktion TEXT, die leider nicht mehrsprachig ist:

=WENN(UND(TAG(I2)=TAG(HEUTE());MONAT(I2)=MONAT(HEUTE()));“happy birthday“;““)

Man muss die Formel ändern oder eine andere Formel verwenden, damit man alle Geburtstagkinder sieht - alle die heute, am 13.01. Geburtstag haben.

Man muss die Formel ändern oder eine andere Formel verwenden, damit man alle Geburtstagkinder sieht – alle die heute, am 13.01. Geburtstag haben.

Seltsame Datumsangaben

Ich habe mal nachgeschaut: Heute, am 07. Januar 2015 verwendet Excel intern die Zahl 42.011. Das erhalte ich, wenn ich die Zelle als Standard formatiere. In meinem openOffice und libreOffice genauso. Allerdings ist der 1. Januar 1900 bei Excel die Zahl 1, in openOffice und libreOffice die Zahl 2. Kann mir das mal einer erklären?

Fehlt ein Tag?

Fehlt ein Tag?

Das ist ganz einfach. Da hat einer nicht aufgepasst! Jedes Jahr, das durch vier teilbar ist, ist ein Schaltjahr. Alle Hundert Jahre ist kein Schaltjahr, alle 400 haben wir wieder ein Schaltjahr. Das heißt: 2016, 2020 und 2024 werden wir ein Schaltjahr haben, im Jahre 2000 hatten wir eines, aber nicht 1900. Die Macher von Excel haben das übersehen. Wenn Sie den 29.02.1900 eingeben, dann erhalten sie ein gültiges Datum, was Sie daran erkennen können, dass die Zahl rechtsbündig steht. Die Macher von openOffice/libreOffice haben dies richtig erkannt und dieses Datum weggelassen. Nun, da Excel im Jahre 1900 anfängt, sind also die ersten beiden Monate falsch. Also: geben Sie keine Datumsangaben zwischen dem 1.Januar 1900 und dem 28.Februar 1900 ein. Aber das haben Sie sowieso nicht vor, oder?

Diagramme schummeln IX

Ich habe nicht von jedem Jahr einen (Meß-)Wert. Kann ich die Daten trotzdem so abtragen, dass die Abstände der Datumsangaben auf der x-Achse korrekt sind, das heißt: im Verhältnis zu den wirklichen Abständen?

das wäre falsch!

das wäre falsch!

Ja. Sie müssen entweder die x-Achse als Datumsachse formatieren oder statt eines Liniendiagramms den Typ xy-Diagramm wählen.

das ist korrekt

das ist korrekt

oder so: ein xy-Diagramm

oder so: ein xy-Diagramm

Datum funktioniert nicht

Ich wollte Datumsangaben im ISO-Format, also: jjjj-mm-tt formatieren, aber es funktioniert nicht.

Die Antwort: Excel unterscheidet (fast) an keiner Stelle zwischen Groß- und Kleinschreibung – eine der wenigen Stellen ist die Formatierung des Monats. Hier muss man ein großes „M“ schreiben. Ein kleines „m“ ist reserviert für Minuten.

Merkwürdige Darstellung von Datumsangaben

Merkwürdige Darstellung von Datumsangaben

Ort und Datum kann nicht kombiniert werden

Die Formel

=“Hamburg, „&HEUTE()

funktioniert nicht.

Stimmt. Beim Verketten von Texten (übrigens würde die Funktion Verketten das gleiche Ergebnis liefern), wird nicht die formatierte Datumsinformation verwendet, sondern der interne Wert des Datums. Lösung schafft die Funktion:

=“Hamburg, „&TEXT(HEUTE();“TT.MM.JJJJ“)

Oder ein benutzerdefiniertes Datumsformat.

Datum verketten - funktioniert nicht

Datum verketten – funktioniert nicht

Mit der Funktion TEXT klappt es ...

Mit der Funktion TEXT klappt es …

... oder mit einem benutzerdefinierten Datumsformat (Zahlenformat)

… oder mit einem benutzerdefinierten Datumsformat (Zahlenformat)