CSV mit Excel 2021 aus Explorer öffnen
Hallo zusammen,
ich habe ein ganz triviales Problem und komme irgendwie nicht weiter. Wir arbeiten oft mit CSV-Dateien und die sind standardmäßig mit Excel verknüpft wenn MS Office installiert ist bzw. mit Libre Calc wenn Libre Office installiert ist.
Libre Office steigt dann direkt in den CSV-Import-Assistenten ein wenn man eine CSV im Explorer doppelklickt und dort kann man dann angeben, welche Trennzeichen usw. Soweit alles fein. MS Excel hat in älteren Versionen sowas auch gemacht aber irgendwann (fragt mich nicht ab welcher Version) ging das nicht mehr. Stattdessen wurde die CSV wie ein Textfile geöffnet und angezeigt. Optisch unterscheidet sich das dann nicht von dem was ein Notepad oder Wordpad anzeigen würde.
Bekommt man MS Excel dazu, beim Öffnen von CSV-Files automatisch in den CSV-Assistenten einzusteigen, so wie das Libre Calc auch macht? Es ist nämlich arg umständlich, erst Excel zu öffnen, dann in den Reiter Daten -> Daten abrufen -> Aus Datei -> Aus Text/CSV. Das kann man machen wenn man es einmal im Monat tut. Aber mehrmals pro Stunde nervt das schon ziemlich.
Danke und Grüße!
ich habe ein ganz triviales Problem und komme irgendwie nicht weiter. Wir arbeiten oft mit CSV-Dateien und die sind standardmäßig mit Excel verknüpft wenn MS Office installiert ist bzw. mit Libre Calc wenn Libre Office installiert ist.
Libre Office steigt dann direkt in den CSV-Import-Assistenten ein wenn man eine CSV im Explorer doppelklickt und dort kann man dann angeben, welche Trennzeichen usw. Soweit alles fein. MS Excel hat in älteren Versionen sowas auch gemacht aber irgendwann (fragt mich nicht ab welcher Version) ging das nicht mehr. Stattdessen wurde die CSV wie ein Textfile geöffnet und angezeigt. Optisch unterscheidet sich das dann nicht von dem was ein Notepad oder Wordpad anzeigen würde.
Bekommt man MS Excel dazu, beim Öffnen von CSV-Files automatisch in den CSV-Assistenten einzusteigen, so wie das Libre Calc auch macht? Es ist nämlich arg umständlich, erst Excel zu öffnen, dann in den Reiter Daten -> Daten abrufen -> Aus Datei -> Aus Text/CSV. Das kann man machen wenn man es einmal im Monat tut. Aber mehrmals pro Stunde nervt das schon ziemlich.
Danke und Grüße!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 11074076811
Url: https://administrator.de/contentid/11074076811
Ausgedruckt am: 03.12.2024 um 17:12 Uhr
13 Kommentare
Neuester Kommentar
Moin,
Excel öffnet CSV-Dateien nur dann richtig, wenn diese Semikolons als Trennzeichen haben. In dem Fall wird die CSV dann aber gleich mit richtigen Spalten geöffnet, komplett ohne Importassistent.
Bei anderen Trennzeichen müsste man, wie du schon beschrieben hast über die Funktion Aus Text/CSV importieren gehen, oder die CSV-Datei öffnen und dann über den Reiter "Daten -> Datentools -> Text in Spalten" gehen.
Gruß Thomas
Excel öffnet CSV-Dateien nur dann richtig, wenn diese Semikolons als Trennzeichen haben. In dem Fall wird die CSV dann aber gleich mit richtigen Spalten geöffnet, komplett ohne Importassistent.
Bei anderen Trennzeichen müsste man, wie du schon beschrieben hast über die Funktion Aus Text/CSV importieren gehen, oder die CSV-Datei öffnen und dann über den Reiter "Daten -> Datentools -> Text in Spalten" gehen.
Gruß Thomas
Also Excel erkennt ein Nichtstandardtrennzeichen dann, wenn es in der ersten Zeile der CSV mitgegeben wird.
hat man z.B. die Datei mit dem Inhalt
Dann öffnet Excel die auch als Textdatei.
Fügt man in der ersten Zeile ein
hinzu, dann kennt Excel das Trennzeichen und zeigt die Daten dann tabelarisch an.
Man könnte da mit Powershell in die farglichen Dateien die erste Zeile einfügen.
hat man z.B. die Datei mit dem Inhalt
1#2#3#
01#002#23.02.2023
Fügt man in der ersten Zeile ein
sep=#
Man könnte da mit Powershell in die farglichen Dateien die erste Zeile einfügen.
Bei Tabulatoren gäbe es noch die Möglichkeit, die Datei einfach mit einem Texteditor zu öffnen, alles zu markieren und dann per Copy&Paste in Excel einzufügen - denn beim Einfügen aus der Zwischenablage wird bei Excel auch nach Tabulatoren getrennt.
Die Option mit der "Steueranweisung" in der ersten CSV-Zeile ist zwar interessant, aber für uns auch keine Option. Denn dann müsste man nach dem Bearbeiten nochmal in ein zweites Programm (Texteditor) und die Zeile wieder entfernen. Sonst ließen sich die Dateien extern wieder nicht einlesen.
Man könnte die Dateien natürlich auch per Powershell mit Import-Csv einlesen und dann mit Export-Csv Semikolon-getrennt ausgeben. Allerdings müsste man da auch im Vorfeld wissen, welche Trennzeichen in den Quelldateien vorhanden sind.
Naja, es ist ja bereits hinlänglich bekannt, dass Excel so zeimlich alles kann, nur nicht mit Tabellen und Daten umgehen.
Das Glas ist weder 1/2 voll oder 1/2 leer. Das Glas ist 01.02.1900
Theoretisch könnte es irgendwie klappen, dass man sich mit VBA ein Template klöppelt, das dann den Import-Assistent startet. Aber ich denke nicht, dass das zielführend wird.
Einfacher wirds wohl wenn man für .csv Calc als Standardanwendung definiert.
Das Glas ist weder 1/2 voll oder 1/2 leer. Das Glas ist 01.02.1900
Theoretisch könnte es irgendwie klappen, dass man sich mit VBA ein Template klöppelt, das dann den Import-Assistent startet. Aber ich denke nicht, dass das zielführend wird.
Einfacher wirds wohl wenn man für .csv Calc als Standardanwendung definiert.
Moin Leute,
mir ist das auch schon häufiger untergekommen, dass Excel CSV-Dateien nur importiert, wenn man zuerst eine leere Datei erstellt und anschließend den Importassistenten startet.
Ich habe das heute früh mal zum Anlass genommen, um mittels ChatGPT Wege zu finden, das zu korrigieren.
Habe ich fast 2 Stunden mit verbracht.
ChatGPT hat mir folgende Wege vorgeschlagen:
Ich habe jetzt erst mal aufgegeben und gebe ChatGPT übers Wochenende Zeit, sich zu sammeln und versuche es vielleicht kommende Woche nochmals.
mir ist das auch schon häufiger untergekommen, dass Excel CSV-Dateien nur importiert, wenn man zuerst eine leere Datei erstellt und anschließend den Importassistenten startet.
Ich habe das heute früh mal zum Anlass genommen, um mittels ChatGPT Wege zu finden, das zu korrigieren.
Habe ich fast 2 Stunden mit verbracht.
ChatGPT hat mir folgende Wege vorgeschlagen:
- Anpassen der Einstellungen in Excel -> leider gibt es diesen Punkt in Excel 2019 nicht (habe Office 2019 Pro Plus installiert), eventuell ja in Excel 2021 (konnte ich noch nicht testen)
- Anpassen der Registry, damit csv-Dateien immer mit dem Import-Assistenten von Excel gestartet werden -> habe ich versucht, leider erfolglos
- Erstellen einer OpenCSVWithExcel.bat" in welcher der Pfad zu Excel /a hinterlegt ist und welche dann Excel ohne Addins startet, was angeblich den Import Assistenten starten soll. Diese .bat dann als Standard-Programm für csv-Dateien angeben-> hat nicht funktioniert
- Ein Python Script erstellen, welches das angeblich passende beinhaltet und den kompletten Pfad nach CSV-Dateien abgrast, damit diese dann von Excel mit dem Assistenten geöffnet werden. Dazu habe ich extra Python und Visual Studio Code installiert (Ich habe von Programmierung so rein gar keine Ahnung.) -> Was soll ich sagen: Es versucht Excel zu starten, jedoch startet nicht Excel, sondern der Aktualisierungsbildschirm von Microsoft Office (OfficeC2rclient.exe), der nach kurzer Zeit verschwindet und nichts passiert.
- Dann schlug die KI vor, diese dateien mit MS Access zu öffnen....
Ich habe jetzt erst mal aufgegeben und gebe ChatGPT übers Wochenende Zeit, sich zu sammeln und versuche es vielleicht kommende Woche nochmals.
Moin,
Alles in allem ist Excel für die Verarbeitung von Maschinendaten definitiv keine gute Wahl.
Selbst wenn man Semikolon-getrennte CSV-Dateien hat - statt die Daten einfach anzuzeigen wie sie sind (was bei CSV definitiv immer die beste Option wäre), versucht Excel immer die Spalten zu interpretieren.
Wie @kpunkt schon sagte...
Oder in der deutschen Sprachfassung von Excel mit CSV-Daten arbeiten, welche Dezimalpunkte statt Kommas verwenden? - ganz böse!
Calc ist für CSV definitiv die bessere Wahl.
Gruß Thomas
Zitat von @goscho:
von welchen Einstellungen wurde da gesprochen? Könnte das ja mal in 365 testen.- Anpassen der Einstellungen in Excel -> leider gibt es diesen Punkt in Excel 2019 nicht (habe Office 2019 Pro Plus installiert), eventuell ja in Excel 2021 (konnte ich noch nicht testen)
* Erstellen einer OpenCSVWithExcel.bat" in welcher der Pfad zu Excel /a hinterlegt ist und welche dann Excel ohne Addins startet, was angeblich den Import Assistenten starten soll.
Naja, also fast... laut Doku wird bei /a die ProgID eines Add-Ins als Argument erwartet und Excel läd dann das Add-In mit dieser ProgID 🤣Alles in allem ist Excel für die Verarbeitung von Maschinendaten definitiv keine gute Wahl.
Selbst wenn man Semikolon-getrennte CSV-Dateien hat - statt die Daten einfach anzuzeigen wie sie sind (was bei CSV definitiv immer die beste Option wäre), versucht Excel immer die Spalten zu interpretieren.
Wie @kpunkt schon sagte...
Das Glas ist weder 1/2 voll oder 1/2 leer. Das Glas ist 01.02.1900
Den muss ich mir merken.Oder in der deutschen Sprachfassung von Excel mit CSV-Daten arbeiten, welche Dezimalpunkte statt Kommas verwenden? - ganz böse!
Calc ist für CSV definitiv die bessere Wahl.
Gruß Thomas
CSV-Erweiterung statt auf Excel auf ein Powershell-Skript leiten was Excel mit der CSV und entsprechenden Parametern öffnet.
Dateierweiterung *.csv in der Registry oder mit Extman dann auf das Skript mit folgender Befehlszeile umleiten
param([parameter(mandatory=$true)][string]$path)
$n = [System.Reflection.Missing]::Value
if([io.Path]::GetExtension($path) -ne '.csv'){
throw "Nur CSV-Dateien unterstützt!"
return
}
$delimiter = Read-Host "CSV Trennzeichen eingeben"
$excel = New-Object -Com Excel.Application -Property @{Visible=$true}
[void]$excel.Workbooks.OpenText($path,$n,$n,1,$n,$n,$false,$false,$false,$false,$true,$delimiter)
Dateierweiterung *.csv in der Registry oder mit Extman dann auf das Skript mit folgender Befehlszeile umleiten
powershell -EP Bypass -File "C:\pfad_zum_script.ps1" %1
Moin,
Wenn man z.B. sowas hat:
würde da als Delimiter Komma statt Semikolon kommen. Selbiges, wenn man z.B. Daten ohne Spaltenüberschriften und mit Dezimalkommas hat.
Dafür ist CSV einfach zu vage definiert, als das man die Trennzeichen wirklich zuverlässig per Skript erkennen könnte. Importassisstent wie bei Calc ist da definitiv die beste Option.
Gruß Thomas
Zitat von @11078840001:
sowas ist imho immer murks.$delimiter = [regex]::match((Get-Content $path -Raw),'^("[^"]*"|[^,;\t\|]+)\s*([,;\t\|])').Groups[2].Value
Wenn man z.B. sowas hat:
Nachname, Vorname;Straße;Tel. Nr.
Dafür ist CSV einfach zu vage definiert, als das man die Trennzeichen wirklich zuverlässig per Skript erkennen könnte. Importassisstent wie bei Calc ist da definitiv die beste Option.
Gruß Thomas
Dann setzt man halt einfach eine Read-Host Anweisung für die Parameter schon hat der User wieder die Kontrolle, er muss das Zeichen dann halt aber vorher kennen ...
War ja auch nur eine Idee/Workaround für Excel, das es bessere Alternativen für CSV gibt steht außer Frage.
$delimiter = Read-Host "CSV Trennzeichen eingeben"
Das geht natürlich und wäre eine bessere Option, allerdings bleiben die restlichen Nachteile/Probleme von Excel bei der Verarbeitung von CSV-Daten dennoch bestehen.
Bei richtigen Tabellen würde ich natürlich immer Excel bevorzugen - aber für CSV ist und bleibt Calc die beste Wahl.
Bei richtigen Tabellen würde ich natürlich immer Excel bevorzugen - aber für CSV ist und bleibt Calc die beste Wahl.