Forums Neueste Beiträge
 

get/set Date to/from Excel

26/11/2007 - 15:41 von Pascal Suter | Report spam
Hallo zusammen

Ich habe folgendes Problem. Das Zielfeld in Excel ist als "generel" -
Format gewàhlt. Also kein Datumsfeld.

Wenn ich per VB 2007-11-26 reinschreibe, dann steht dies auch im Excel
(allerdings plötzlich als Date feld).
Wenn ich anschliessend das ganze wieder einlese:
mydate = _range.Value2.ToString();
dann habe ich in mydate etwas wie 364441 (weiss nicht mehr was dort war;)).

Ins Excel schreiben tu ich das so:
_range = mainAWS.get_Range("zrevbdate", Type.Missing);
_range.Value2 = formTabMain.TbRevDate2;

Weiss jemand wie ich das machen kann, dass ich beim importieren mein Datum
wieder habe?

Grüsse
 

Lesen sie die antworten

#1 Frank Dzaebel
26/11/2007 - 16:44 | Warnen spam
Hallo Pascal,

Ich habe folgendes Problem. Das Zielfeld in Excel ist als "generel" -
Format gewàhlt. Also kein Datumsfeld.
dann habe ich in mydate etwas wie 364441 (weiss nicht mehr was dort war;)).
Weiss jemand wie ich das machen kann, dass ich beim importieren mein Datum
wieder habe?



Die Zellen müssen das Format Datum haben.
364441 wahrscheinlich nicht, denn wàre der 19.10.2897!
Das Format kannst Du auch über C# modifizieren.
Über Excel "rechte Maus/Zellen formatieren/Datum".
Umgekehrt "formatieren/Standard".

Eins der typisches Verfahren, das Datum von Excel (bei Datums-
Formatierung!) zu bekommen ist z.B.:

Range range = worksheet.get_Range("A1", "A1");
object value = range.Value2;
DateTime dt = default(DateTime);
if (value != null)
if (value is double)
dt = DateTime.FromOADate((double)value);
else
DateTime.TryParse(value.ToString(), out dt);
MessageBox.Show(dt.ToString());


[Gewusst wie: Speichern und Abrufen von Datumswerten in Excel-
Bereichen]
http://msdn2.microsoft.com/de-de/library/1ad4d8d6(VS.80).aspx


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen