Ich habe eine Webanwendung, die ihre Daten in eine CSV-Datei exportiert. Hier ist eine Beispielzeile der betreffenden CSV-Datei:
28,"65154",02/21/2013 00:00,"false","0316295","8316012,8315844","MALE"
Da ich kein Bild posten kann, muss ich die Ergebnisse in Excel erklären. Das Feld "0316295" wird in eine Zahl umgewandelt und die führende 0 verschwindet. Die "8316012,8315844" wird als eine einzige Zahl interpretiert: 83,160,128,315,844. Das ist offensichtlich nicht das beabsichtigte Ergebnis.
Ich habe gesehen, dass Leute für solche Fälle ein führendes einfaches Zitat empfehlen, aber das funktioniert auch nicht wirklich.
28,"65154",02/21/2013 00:00,"false","'0316295","'8316012,8315844","MALE"
Das einfache Anführungszeichen ist in der Zelle in Excel jederzeit sichtbar. Wenn ich jedoch selbst eine Zahl mit einem führenden einfachen Anführungszeichen eingebe, wird nur die beabsichtigte Zeichenfolge und nicht das einfache Anführungszeichen mit der Zeichenfolge angezeigt.
Importieren ist anscheinend nicht dasselbe wie Tippen.
Hat hier jemand eine Lösung?
quelle
Antworten:
Das sollte funktionieren
quelle
00E3
durch 0 (0 * 10 ^ 3) ersetzt und als Sci-Notation (0,00E + 00) angezeigt. Es macht tatsächlich das gleiche für"00e3"
ohne die=
. Funktioniert aber="00e3"
perfekt. (Öffnen einer CSV mit Excel 2010)Um die führenden Nullen beizubehalten, können Sie das Format dieser bestimmten Spalte im Textimport-Assistenten auf Text festlegen.
"
. Klicken Sie auf Weiter .Hier können Sie die Formate festlegen . Klicken Sie auf die Überschrift der Spalte, deren führende Null (en) Sie beibehalten möchten. Wählen Sie Text . (Siehe Bild unten)
Klicken Sie auf Fertig stellen und wählen Sie dann einen geeigneten Speicherort für Ihre Daten. Beispielergebnis:
Bearbeiten : Es gibt einen anderen Weg ; Lassen Sie die Web-App in eine durch Kommas getrennte TXT-Datei anstelle von CSV exportieren (oder ändern Sie nach dem Speichern einfach die Dateierweiterung der exportierten Datei). Dadurch wird Excel gezwungen, den Importassistenten beim Öffnen der Datei zu durchlaufen. Als zusätzlicher Vorteil wird die Wahrscheinlichkeit verringert, dass Benutzer Ihre ursprünglichen Rohdaten ändern oder manipulieren.
quelle
.TXT
stattdessen durch Kommas getrennt exportieren.CSV
(oder ändern Sie einfach die Dateierweiterung der exportierten Datei). Diese Art von "zwingt" Benutzer, den Importassistenten zu durchlaufen, wenn sie die Datei öffnen.Excel behandelt numerische Werte, die mit einem Tabulatorzeichen beginnen, als Text.
Erscheint als:
| ist die Zellgrenze (zur Veranschaulichung). Wenn Ihr System beispielsweise die CSV-Datei mit dem Zeichensatz utf-8 generiert, können Sie das
	
(Tabulatorzeichen in Hex) vor Ihrem numerischen Wert einfügen, um Excel zu zwingen, es als Text zu interpretieren.quelle
Excel erkennt das Format eines CSV-Felds automatisch, es sei denn, die CSV-Spalte hat dieses Format:
Dies funktioniert auch für Google Sheets
quelle
Sie müssten die Funktion "Daten -> Externe Daten abrufen -> Text aus Datei importieren" in Excel verwenden, um sie als Text anzuzeigen. Dies ist der erwähnte Textimport-Assistent @Kaze.
Die einzige Möglichkeit, Excel zu zwingen, Zahlen als Text aus der Eingabe anzuzeigen, ohne dass der Benutzer etwas tun muss, besteht darin, eine Excel-Datei auszugeben und ein "benutzerdefiniertes Zahlenformat" anzugeben. Ich empfehle hierfür die Verwendung einer XLS-Exportbibliothek, da dies nicht so einfach zu sein scheint wie das Hinzufügen einer Zeile Konfigurationstext zu einer CSV-Datei.
quelle
Versuchen Sie die Bereinigungsfunktion für Werte, die durcheinander sind. Zum Beispiel = sauber ("12345678901234567890"). Es funktioniert für mich für Zahlen, Daten, Zeiten usw. Ich würde darauf hinweisen, dass dies möglicherweise nicht mehr mit neuen Versionen usw. funktioniert, da dies überhaupt nicht der Zweck dieser Funktion ist.
quelle