Ich erstelle eine HTML-Tabelle, die als Excel-Tabelle geöffnet wird. Mit welchem HTML-Tag oder CSS-Stil kann ich "erzählen", dass Excel den Inhalt der Zelle als Text anzeigt?HTML-Tabellenzelle formatieren, so dass Excel als Text formatiert?
Antwort
Sie anwenden können, für die Zahlen zu den Zellen Formatierung, Text, Daten, etc.
meine Antwort auf diese anzeigen: HTML to Excel: How can tell Excel to treat columns as numbers?
(bereinigtes Snippet)
Wenn Sie ein hinzufügen CSS-Klasse zu Ihrer Seite:
.num {
mso-number-format:General;
}
.text{
mso-number-format:"\@";/*force text*/
}
Und schlagen Sie diese Klassen auf Ihrem TD, funktioniert es?
<td class="num">34</td>
<td class="num">17.0</td>
<td class="text">067</td>
Es gibt ein Problem bei der Verwendung dieser Lösung (CSS-Stil mit Zahlenformat). Das Excel gibt den Fehler "Nummer als Text gespeichert", die in einigen Fällen unbequem sein kann. Um dieses Problem zu vermeiden, ist es möglich, das ZERO WIDTH SPACE-Zeichen (& # 8203;) am Anfang des Feldes zu verwenden.
Hinterlässt einen unsichtbaren Charakter, sieht aber besser aus! – TheStoryCoder
Dies ist das einzige, das mir geholfen hat, eine Zelle zum Text zu zwingen. Pre-angehängt dies an den Wert und BLAMO! Text! – Gary
Ich habe nicht genug Rep zu kommentieren oder up-vote, aber Raposos Antwort funktionierte sehr gut für mich. Unser System importiert SSRS-Berichte und führt sie im lokalen Modus aus. Es speichert die DataSet-Abfrage (n) in der Datenbank und ruft sie zur Laufzeit ab. Bei Excel-Exporten werden jedoch die resultierenden Daten der Abfrage in einem DataGrid-Objekt ausgeführt und direkt als HTML in den Stream geschrieben, wobei die Erweiterung auf .xls festgelegt wird. Putting Raposo-Lösung in der Datasetabfrage Bericht:
SELECT someColumn = '​' + someColumn
FROM, etc.
und es in der SSRS Feld Ausdruck zu entfernen:
=Replace(Fields!someColumn.Value, "​", "")
das einzige, was ich gefunden habe, das funktioniert. Vielen Dank!
Hervorragende Lösung! Ich habe es wie unten
HttpContext.Current.Response.Write("<style> .txt " + "\r\n" + " {mso-style-parent:style0;mso-number-format:\"" + @"\@" + "\"" + ";} " + "\r\n" + "</style>");
HttpContext.Current.Response.Write("<Td class='txt'>​");
HttpContext.Current.Response.Write(Coltext);
HttpContext.Current.Response.Write("</Td>");
und es funktioniert gut für mich
ich fünf Lösungen für dieses Problem gefunden haben:
Format das Feld als Text wie von scunliffe beschrieben. Dies hat das Problem des grünen Dreiecks, wie es von Raposo angegeben wurde.
Verwendung & # 8203; wie von Raposo beschrieben. Dies hat das Problem, dass der Wert nicht wirklich eine Zahl ist. Dies könnte ein Problem sein, wenn die Daten in ein System zur Verarbeitung gezogen werden.
Fügen Sie den TD als <td> = "067" </td >. Dies hat das gleiche Problem wie # 2.
das TD als <td> = text (067 "000") </td > hinzufügen. Dies hat auch das gleiche Problem wie # 2.
Verwenden Sie eine CSS-Klasse von.text3 {Mso-Nummer-Format: "000";} und fügen Sie diese Klasse dem TD hinzu. Dies ist meine bevorzugte Lösung, aber es hat das Problem, mehrere Klassen zu erfordern, wenn Sie verschiedene Längen haben. Wenn Sie Ihre Kopfzeile schreiben und dann durch Ihre Daten iterieren, müssen Sie alle möglichen Klassen hinzufügen, bevor Sie wissen, welche von denen Sie benötigen. Aber das hat den Vorteil, dass der Text wirklich eine Zahl ist und es kein grünes Dreieck gibt.
Sie können das Problem lösen, indem das Hinzufügen non-breaking Raum:
vor dem Wert des <td>
Elements.
Beispiel: <td> 0:12:12.185</td>
Statt: <td>0:12:12.185</td>
- 1. Formatieren verketteten Text in Excel
- 2. So formatieren Sie den QLabel-Text automatisch
- 3. Formatieren des dynamischen Bereichs als Text
- 4. Formatieren von Excel-Zellen (Währung)
- 5. C# Excel-Arbeitsblatt formatiert keine Zellen
- 6. Formatieren einer Untergruppe von Text in Excel-Zelle mit Formel
- 7. Keep Excel Zelle Format als Text mit "Datum wie" Daten
- 8. EditText-Telefonnummer als Benutzertypen formatieren
- 9. Formatieren Sie XML so, dass Attribute vertikal ausgerichtet sind.
- 10. So formatieren Sie die Excel-Zellen beim Export von C#
- 11. Referenzzellenwert als Zeichenfolge in Excel
- 12. Wie formatiert man eine Datetime, damit Excel es versteht?
- 13. Excel VBA - geschachtelte Schleife zum Formatieren von Excel-Tabellenspalten
- 14. Formatieren einer Ganzzahl als oktal
- 15. Wie formatiert man Text zu ######. ##
- 16. UITextField Text fett formatieren?
- 17. Wie Dezimalzahlen als Prozentsatz in Excel mit epplus formatieren?
- 18. Excel-Makro zu formatieren Datum
- 19. So formatieren Sie die Nummer mit "." als Tausendertrennzeichen und "," als Dezimaltrennzeichen?
- 20. Wie formatieren Sie die logarithmischen Doppelachsen-Hilfsstrichbeschriftungen so, dass sie als Zehnerpotenzen angezeigt werden?
- 21. Gibt es in Excel eine Möglichkeit, die Formelleiste so zu formatieren, dass es einfacher ist, lange/mehrere Funktionen zu lesen?
- 22. Formatieren von Text als Camelcase in Visual Studio
- 23. Kann Text auf der Eingabe-Schaltfläche nicht als fett formatieren?
- 24. Text in Python neu formatieren
- 25. HTML-Optionsschaltflächen, die als Umschaltschaltflächen formatiert werden
- 26. Wie man die Django-Vorlage in Sublime Text formatiert
- 27. jquery display formatiert json
- 28. android get mssql Textspalte Textview als formatiert
- 29. Wie Flag-Text, der ein lat/lang ist, so dass als Standort als E-Mail erkannt
- 30. So schreiben Sie formatierte Zahlen als Zahlen in JExcel (jxl)
Nahm viel zu lange für diese Lösung .. diese HTML-Tabelle Google-Tabelle Tipps sind nicht zu übertreffen – John
brillant zu finden! wichtig für Postleitzahlen, die beginnen w/0 – squarecandy
machte meinen Tag zu ... fast ein Jahr später, um das zu finden ... haha Vielen Dank trotzdem :) – pojomx