Beim Importieren in Excel werden Zellen automatisch aus .CSV als Währung formatiert

2786
Adam

Wie erhalte ich beim Importieren einer CSV-Datei in Excel alle Zellen, die eine Zahl enthalten, als Währung formatiert? Wenn der Wert für die Zelle derzeit das Dollarzeichen ($) enthält, wird es als Währung formatiert, bleibt jedoch als reiner Text erhalten, wenn das Dollarzeichen nicht vorhanden ist. Ich möchte auch Zellen ignorieren, die Text enthalten, da sie als reiner Text bleiben sollen. Beispiele: 1 -> $1.00, One -> One, 1.0 -> $1.00,"Hello World" -> "Hello World"

Das Datenimporttool in Excel funktioniert für mein Szenario nicht. Es fehlt die Möglichkeit, beim Importieren als Währung zu formatieren, wobei nur die Optionen "Nummer", "Datum" oder "Allgemein" angegeben werden.

0
Mögliches Duplikat von [Wie bekomme ich Excel, um nicht mit der Formatierung einer CSV-Datei herumzuspielen] (http://superuser.com/questions/304972/how-do-i-get-excel-to-not-mess -around-with-the-formatting-of-a-csv-Datei) Excellll vor 8 Jahren 0
@Excellll ist nicht so, weil ich nicht möchte, dass Excel die Formatierung ignoriert. Ich möchte, dass es speziell formatiert wird. Ich möchte auch nicht die Formatierung von mehr als 100 Spalten und Zeilen manuell ändern Adam vor 8 Jahren 0
Haben Sie versucht, VBA nach dem Import für Spalten zu formatieren? Engineer Toast vor 8 Jahren 0
@EngineerToast habe ich. Ich kann die Spalten nach Bedarf formatieren lassen, aber das unterscheidet sich nicht vom manuellen Ändern des Formats. Ich möchte, dass die Zellen beim Import automatisch als Währung formatiert werden. Adam vor 8 Jahren 0
Haben Sie vor dem Importieren versucht, die Spalten zu ändern? Das ist 1 -> 1 $ oder 1 $? ott-- vor 8 Jahren 0
@ ott-- Dazu müsste ich jede Zelle vor dem Import manuell ändern, was aufgrund der Anzahl der Zellen äußerst unpraktisch ist Adam vor 8 Jahren 0
Nein, Sie müssen es nicht manuell tun. ott-- vor 8 Jahren 0
@ ott-- Wie würde ich sonst die Spalten so ändern, dass .CSV `$ 1 'anstelle von' 1 'liest? Adam vor 8 Jahren 0
In Excel wird die Zahlenformatierung nicht auf Zellen angewendet, die Text enthalten. Wählen Sie nach dem Importieren der Daten diese einfach aus (STRG + A) und wenden Sie das gewünschte Format an. Máté Juhász vor 8 Jahren 1

1 Antwort auf die Frage

1
Larry1833681

Hier ist eine Lösung, die csv2odf verwendet, um die Formatierung in Excel zu automatisieren:

Erstellen Sie eine Tabellenkalkulationsvorlage in Excel mit den folgenden Spezifikationen:

  1. Fügen Sie Spaltentitel mit der gleichen Anzahl von Spalten wie die CSV ein. (Wenn Sie Titel aus der CSV-Datei verwenden möchten, fügen Sie dem Befehl unten die Option -H hinzu.)

  2. Fügen Sie eine Beispieldatenzeile in der zweiten Zeile hinzu. Verwenden Sie Dummy-Nummern für die Nummern und Dummy-Text für die Texte. Formatieren Sie den Text / die Zahlen wie gewünscht, formatieren Sie die Zahlen ggf. mit der Währung.

  3. Speichern Sie die Vorlage als xlsx (xls funktioniert nicht).

Führen Sie diesen Befehl aus:

csv2odf yourdata.csv yourtemplate.xlsx output.xlsx 

Ihre Daten werden in der Ausgabe formatiert, wobei die Formatierung aus der Vorlage verwendet wird. Sie können jedes Mal dieselbe Vorlage verwenden, um die Konvertierung zu automatisieren.

Beachten Sie, dass das Programm Python zum Ausführen benötigt.