HTML in Excel: Wie kann Excel sagen Spalten als Zahlen zu behandeln?

stimmen
19

Ich brauche die folgenden beim Öffnen einer HTML in Excel zu erreichen (Response.contentType=application/vnd.ms-excel):

  • Kraft Excel-Gehalt von td Zellen als Zahlen zu betrachten
  • macht die oben, so dass alle nachfolgenden Benutzer eingegebenen Formeln auf diesen Zellen arbeiten (wenn die Kalkulationstabelle wird geöffnet)

Bisher war ich erfolgreich mit dem Hinzufügen style=vnd.ms-excel.numberformat:0.00zu den td Zellen in Frage. Der Inhalt der Zellen richtig als Zahlen dargestellt , wenn ich direkt auf sich in der Excel klicken, aber die Formeln funktionieren nicht.

Wenn dies gelingt, wäre diese Technik sehr nützlich, weil jeder Web-Excel-Bericht Benutzer mit dem entsprechenden Formeln nach kundenspezifischen Anforderungen erweitert werden könnte. Danke im Voraus.

Veröffentlicht am 09/12/2008 um 23:26
quelle vom benutzer
In anderen Sprachen...                            


6 antworten

stimmen
28

Wenn Sie eine CSS-Klasse zu Ihrer Seite hinzufügen:

.num {
  mso-number-format:General;
}
.date {
  mso-number-format:"Short Date";
}

Und schlagen diese Klassen auf Ihrem TD, funktioniert es?

<td class="num">34</td>
<td class="num">17.0</td>
<td class="date">12/17/2008</td> <!-- if you are playing with dates too -->

Update: Zusätzliche Formatierungsoptionen aus @Aaron.

Beantwortet am 10/12/2008 um 00:06
quelle vom benutzer

stimmen
16

Hier ist eine Liste von Excel - Formaten: Styling Excel - Zellen mit mso-number-Format

Beantwortet am 22/07/2009 um 16:34
quelle vom benutzer

stimmen
4

Der beste Trick ist, eine Excel-Tabelle mit allen Farben / (bedingt) Formate / Formeln, die Sie benötigen, um Mock-up.

Halten Sie es so einfach wie möglich, nur das Nötigste Reihen usw.

Speichern Sie die Excel-Tabelle „als XML-Tabelle“

Dann haben Sie eine Vorlage eine Tabelle über XML zu bauen.

Ich reinige allgemein Stile in den ursprünglichen XML-Daten aus der Excel-Arbeitsmappe gespeichert werden. Entfernen von Duplikaten und Umbenennen von ihnen.

Dann ist es nur eine Frage der Bevölkern mit dem, was Datenquelle Sie haben.

Ich weiß nicht, in welcher Umgebung Sie Codierung, aber in VB.NET mit LINQ und XML-Literale, ist dies eine sehr einfache Aufgabe.

Beantwortet am 10/12/2008 um 00:04
quelle vom benutzer

stimmen
2

Es spielt funktioniert manchmal nicht , wenn Sie es hinzufügen , indem ein css classin diesem Fall versuchen Sie es mit in Stylezu Ihrem TD. Ich habe es eine Spalte auf einen Text für die Formatierung. so was

 style="mso-number-format:\@;"

Für Sie wäre es als

  mso-number-format:General
Beantwortet am 03/10/2012 um 14:17
quelle vom benutzer

stimmen
1

Ich konnte nicht eine der Antworten auf dieser Seite erhalten in Excel arbeiten 2010 ich dies am Ende mit.

<td x:num>123</td>

Beantwortet am 22/07/2015 um 03:45
quelle vom benutzer

stimmen
0

UPDATE: Sie müssen auch nicht-breaking Speicherplatz (nbsp die) aus td Zellen mit numerischer oder Geldinformation entfernen, um Formeln auf diesen Zellen in Excel zu arbeiten. So ist das Problem gelöst.

Beantwortet am 10/12/2008 um 19:42
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more