PQ: Internationales Datenformat

  Wis­sens­stand: Lev­el 1 ⇒ Ein­steiger in PQ, keine/kaum Erfahrung   

In einem Excel-Forum (Her­ber) wurde unter dem Titel ” For­mat Punkt / Kom­ma” fol­gende Frage gestellt:

Guten Tag Excel Experten,

ich habe in den Bere­ich (.range("E2:AS" & LZ) Zahlen­werte aus dem engl. For­mat,- also Punkt, statt Kom­ma.
Wenn ich diese erset­zen möchte, zB mit

Replace What:=".", Replacement:=",", LookAt:=xlPart

wird immer noch nicht der Zahlen­wert entsprechend angezeigt (wohl Apos­troph vorhan­den).

Gibt es ein Makro, was mir den oben genan­nten Bere­ich „in einem Wisch” entsprechend ändert (for­matiert)?

Gruß
Fred

Ver­schiedene Formel-Lösun­gen und auch eine funk­tion­ierende VBA-Lösung wur­den vorgestellt. Als beken­nen­der Fan des Pow­er Query-Tools finde ich natür­lich, dass ger­ade so etwas eine „Steil­vor­lage” für PQ ist. 😎 Die vom Fragesteller eingestellte *.xlsb habe ich zur Ver­mei­dung von Missver­ständ­nis­sen in eine *.xlsx umge­wan­delt, es war sowieso keine einzige Zeile VBA-Code enthal­ten. Diese der­art kon­vertierte Datei kön­nen Sie hier in unserem Blog herun­ter­laden.

Nach dem öff­nen der Datei wer­den sie die Dat­en erst ein­mal in eine „Intel­li­gente” Tabelle umwan­deln. Und mit hoher Wahrschein­lichkeit wird solch ein Dia­log-Fen­ster mit ein­er aus mein­er Sicht irri­tieren­den Nach­frage erscheinen:

… und was soll mir das nun sagen?

Ein­fach mit  Ja  bestäti­gen. Ich ver­sichere Ihnen, dass diese Nach­frage nicht wegen der Umwand­lung in das Stan­dard-For­mat auf­taucht. Die vor­liegen­den Dat­en wur­den (auf welchem Wege auch immer) über eine andere Abfrage importiert und Excel „merkt” das nun und fragt vor­sicht­shal­ber ein­mal nach. 😉 Mehr dazu kön­nen Sie hier bei Microsoft nach­le­sen.

Hier hat der Fragesteller die gewün­scht­en Dat­en aus dem Web importiert und als *.csv-Datei gespe­ichert. In Excel (Ver­sion 2016) hat er nun die Dat­en über den Weg Externe Dat­en abrufen | Aus Text importiert. Hin­weis: Fred (der Fragesteller) hätte es in jed­er Hin­sicht ein­fach haben kön­nen. Den alter­na­tiv­en Weg des Imports ein­er csv-Datei zeige ich Ihnen weit­er unten auf.

Wie soeben beschrieben, ein Klick auf die Schalt­fläche  Ja  reicht aus, um die Verknüp­fung mit den Dat­en zu lösen. Wenn Sie doch lieber die Sache „zu Fuß” ange­hen wollen, dann wählen Sie ein­fach erst ein­mal die Schalt­fläche Nein. Alter­na­tiv schließen sie die Datei ohne zu spe­ich­ern und importieren Sie die csv noch ein­mal auf beliebigem Wege. Ver­mut­lich wer­den sie direkt nach dem Import zwis­chen Sym­bol­leiste und der Bear­beitungszeitzeile eine Sicher­heitswar­nung find­en, dass Externe Daten­verbindun­gen deak­tiviert wur­den. Die kön­nen Sie ein­fach mit einem Klick auf das X rechts in der Leiste wegk­lick­en. Menü Dat­en | Verbindun­gen und es wird sich solch ein Dia­log auf­tun:

Hier wer­den alle Daten­verbindun­gen aufge­lis­tet und ver­wal­tet

Der Name der Datei (hier: 132610) ist der Name jenes Files, welch­es ich aus dem Blog herun­terge­laden und anschließend in eine csv kon­vertiert habe. Die Dateien­dung wird (Win­dows-typ­isch bei Stan­dard-Ein­stel­lun­gen) nicht mit angezeigt. In diesem Dia­log kön­nen Sie ver­schiedene weit­ere Infor­ma­tio­nen erkun­den und auch die Verbindung kap­pen (ent­fer­nen). Übri­gens: Die vor mit weit­er unten zum Down­load ange­botene Datei hat einen etwas anderen Namen.

▲ nach oben …

Aus der vorliegenden *.xlsx

O. k., Sie wollen erst ein­mal die *.xlsx nutzen und den Weg über Pow­er Query beschre­it­en. Nach­dem sie also auf ihre Weise die Daten­verbindung ent­fer­nt oder den Daten­im­port auf andere Weise durchge­führt haben, sollte das jet­zt mit dem umwan­deln der Dat­en in eine For­matierte Tabelle auch klap­pen. Das geht entwed­er über das Menüband oder per StrgT bzw. StrgL. diese Tabelle importieren Sie dann über Dat­en | Aus Tabelle in den Pow­er Query-Edi­tor. Das stellt sich anschließend so dar:

Direkt nach dem Import in den Pow­er Query-Edi­tor

Das sieht ja bis­lang ganz vernün­ftig aus. Im ersten Schritt wer­den Sie das Datum (Spalte Date) von der Uhrzeit „befreien” wollen. Aber sie wer­den sich erin­nern, dass die Fragestel­lung dergestalt war, dass auch ja diverse Zahlen mit einem Dez­i­mal­tren­ner Punkt statt eines hierzu­lande genutzten Kom­mas dargestellt wor­den sind. Und wenn sie bis ganz nach rechts durch­blät­tern wer­den sie diese Aus­sage nicht bestätigt find­en. Wed­er ein Kom­ma noch ein Punkt sind zu sehen. Zugegeben, das liegt in diesem Fall am Pow­er Query.

Im recht­en Seit­en­fen­ster wer­den Sie unter Angewen­dete Schritte erken­nen, dass direkt unter dem Ein­trag Quelle der Schritt Geän­dert­er Typ automa­tisch einge­fügt wor­den ist. Löschen Sie diesen Schritt beispiel­sweise durch einen Klick auf das rote links. Und siehe da, die Aus­sage des Fragestellers wird nun ganz klar bestätigt; jew­eils ein Punkt statt eines Kom­mas als Dez­i­mal­tren­ner. Sie wer­den auch rasch erken­nen, dass der Daten­typ als dieser Spal­ten von der Optik her Text jedoch in der Real­ität Beliebig ist. Markieren Sie alle Spal­ten ab GD<-5 bis zur let­zten Spalte durch einen Klick in die erste Über­schrift, Shift und dann in die let­zte Über­schrift. Führen Sie nun einen Recht­sklick in eine der markierten Über­schriften durch, Typ ändern | Mit Gebi­etss­chema… und im Dia­log wählen Sie den Daten­typ: Dez­i­malzahl. Bei Gebi­etss­chema ide­al­er­weise ein Klick auf die Taste F und wählen Sie im Drop­Down Englisch (Welt). Nach einem OK wer­den Sie erken­nen, dass jet­zt alle Zahlen mit einem Kom­ma als Dez­i­mal­tren­ner verse­hen sind und auch rechts­bündig aus­gerichtet sind. So soll es sein! 🙂 

Zurück zum The­ma „Datum mit Uhrzeit”. Ide­al­er­weise wer­den sie die Spalte durch einen Klick auf die Über­schrift Date und den Daten­typ direkt von Beliebig in Datum ändern. Damit wird die Abfrage prinzip­iell ihren endgülti­gen Stand erre­icht. Klick­en Sie auf das Sym­bol Schließen & laden und die Dat­en wer­den in ein neues Blatt geschrieben.

Wenn sich jet­zt die Quell­dat­en (egal ob csv oder Excel) verän­dern, reicht in der Ergeb­nis-Tabelle ein Klick auf Aktu­al­isieren und der neueste Stand wird sofort gener­iert.

▲ nach oben …

Import der heruntergeladenen csv-Datei

Auch wenn Microsoft csv-Dateien stets mit einem dem Excel-Logo zum ver­wech­seln ähn­lichen Sym­bol ver­sieht, so ist ein Dop­pelk­lick auf solch eine Datei zum öff­nen nicht rat­sam. Da geschieht dann so einiges, was Sie vielle­icht gar nicht wollen und auch nicht bee­in­flussen kön­nen. Wenn Sie Pow­er Query ein­set­zen wollen, wer­den sie ide­al­er­weise in einem leeren Arbeits­blatt diesen Weg gehen: In Ver­sio­nen bis Excel 2016 (ein­schließlich) Dat­en | Neue Abfrage | Aus Datei | Aus csv und anschließend die Auswahl der gewün­scht­en Datei. Auch die csv kön­nen Sie von unserem Serv­er herun­ter­laden. Ab 2019365 stellt sich das so dar: Dat­en | Aus Text/csv oder über den Menüpunkt Dat­en abrufen | Aus Datei | Aus Text/csv und auch hier im File-Dia­log die entsprechende Datei markieren und öff­nen. In diesem Fall öffnet sich anschließend dieser Dia­log:

Das Dialogfen­ster für den Import von csv-Dateien

Klick­en Sie auf die Schalt­fläche Dat­en trans­formieren und sofort wer­den die Dat­en in den Pow­er Query-Edi­tor importiert. Die erste Spalte ist markiert. Und wahrschein­lich wird Ihnen auf­fall­en, dass ein­er­seits die Über­schrift eine andere ist (Beteili­gung statt vorher Date) und dass das Datum hier im Daten­typ: Ganze Zahl ohne Tren­nung zwis­chen Tag, Monat und Jahr geschrieben ist. Ich zeige Ihnen hier zwei Wege auf, daraus wieder ein kor­rek­tes Datum zu machen:

  1. Sie ändern den Daten­typ im ersten Schritt auf Text, das geht beispiel­sweise per Recht­sklick oder über das Menüband. Anschließend gle­ich noch ein­mal den Daten­typ ändern dieses Mal aber auf Datum. Dass Sie jedes Mal die Änderung bestäti­gen müssen, ist kor­rekt und auch wichtig. Wenn Sie möcht­en, kön­nen Sie bei der Gele­gen­heit auch gle­ich die Über­schrift von Beteili­gung in Date ändern.
  2. Wenn Sie ein wenig tiefer in die Materie des Pow­er Query ein­steigen wollen, dann bietet sich auch ein Weg an, der auf Dauer gese­hen um einiges effek­tiv­er ist und gewiss einen Erken­nt­nis­gewinn bringt. Sehen Sie sich ein­mal diesen Bild­schir­mauss­chnitt, ins­beson­dere den gelb markierten Teil an:

Vor­sicht, vielle­icht vor dem „Exper­i­ment” den Zus­tand per Schließen & laden sich­ern

Nach dem Kom­ma ist der Daten­typ als Int64.Type einge­tra­gen. Ich markiere diesen Text, ent­ferne ihn und trage stattdessen in exakt dieser Schreib­weise (Klein­schrei­bung) type date ein. Ein Klick in die Dat­en der Abfrage und sie erken­nen, dass der Effekt sofort gegeben ist. 😎 

Für die Spal­ten GD<-5 bis zur let­zten Spalte gilt im Prinzip das gle­iche Vorge­hen, wie im ersten Teil schon beschrieben. Sie markieren alle rel­e­van­ten Spal­ten, wan­deln den Daten­typ im ersten Schritt in Text und anschließend per Recht­sklick in eine der markierten Über­schriften in den Daten­typ Mit Gebi­etss­chema… um. Der endgültige Daten­typ ist dann natür­lich Dez­i­malzahl und das Gebi­etss­chema ist dann beispiel­sweise Englisch (Welt) oder auch Englisch (USA).

Damit es auch diese Kon­vertierung der Dat­en erfol­gre­ich abgeschlossen. Schließen & laden oder Schließen & laden in… und die Abfrage wird im Arbeits­blatt gespe­ichert. Ich ziehe den zweit­ge­nan­nten Weg vor, weil dann die Dat­en im ersten leeren Arbeits­blatt gespe­ichert wer­den kön­nen und nicht automa­tisch ein neu erstelltes Tabel­len­blatt geschrieben wer­den.

Natür­lich gilt auch hier die Vere­in­barung, dass verän­derte Quell­dat­en automa­tisch über­nom­men wer­den, wenn sie die Funk­tion­al­ität Aktu­al­isieren nutzen.

Zurück zum Absprung (weit­er oben)

▲ nach oben …

Hat Ihnen der Beitrag gefallen?
Erleichtert dieser Beitrag Ihre Arbeit?

Dann würde ich mich über einen Beitrag Ihrer­seits z.B. 2,50  freuen …

Dieser Beitrag wurde unter Datentyp anpassen, Datum & Zeit, Power Query, Web-Abfragen abgelegt und mit , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.