2010-01-13 15 views
5

ho generare un file XML tramite C#, e la parte relevent assomiglia a questoExcel XML, come posso ottenere che Excel visualizzi il mio campo DateTime nel formato aaaa-MM-gg?

<ss:Cell> 
    <ss:Data ss:Type="DateTime">2009-01-18T00:00:00.000</ss:Data> 
</ss:Cell> 

Tuttavia viene visualizzato in Excel come un numero, come 41249, che non ha alcuna somiglianza con la data originale. Se faccio clic con il tasto destro del mouse sulla cella, e cambio il formato in gg/MM/aaaa o qualsiasi altra cosa, allora visualizza la data corretta. Qualcuno sa come posso impostare il formato in XML per come viene visualizzata la data? I dati sono lì, sono solo visualizzati in modo errato.

risposta

16

Nella sezione <Styles> aggiungere

<Style ss:ID="s22"> 
    <NumberFormat ss:Format="yyyy\-mm\-dd"/> 
    </Style> 

poi segnare il tuo cellulare con lo stile:

<Cell ss:StyleID="s22"><Data ss:Type="DateTime">2009-01-21T00:00:00.000</Data></Cell> 

In alternativa, aprire il file XML in Excel, fare il cambiamento che vuoi, ri-salvarlo come XML, quindi guarda per vedere cosa è cambiato.

+0

Dolce, questo funziona benissimo. Sfortunatamente il mio excel non salverà in xml, verrà visualizzato un messaggio di errore sugli schemi o arresti anomali di Excel. Mi piacerebbe sapere come abilitare i filtri di default nel codice XML per consentire anche l'ordinamento delle colonne. – NibblyPig

+0

Wow, l'ho gestito semplicemente aggiungendo fino alla fine. – NibblyPig

Problemi correlati