Hallo zusammen,
Ich habe ein kleines Problem beim fernsteuern von Excel 2003 aus Visual C# 2008. Ich schreibe gerade ein Programm für meine Firma indem ich verschiedene Maschienendaten (z.B. Stückzahl) aus einer SPS auslese und in einer Excel Datei speichere. Mein Problem ist, wie kann ich aus einer Excel Zelle einen Datumswert so auslesen, das ich ihm mit „DateTimeOffset.Now“ vergleichen kann. Hintergrund der ganzen geschichte ist, das ich zyklisch die Werte in die Tabelle schreibe. Dabei soll kontrolliert werden ob schon ein Datensatz mit dem aktuellen Datum generiert wurde. Wenn nicht dann wird der Datensatz erstellt. Das funktioniert bestens. Was bisher nicht funktioniert Datum auslesen und mit aktuellen Datum vergleichen. Wandele ich die Variable mit „.ToString()“ um erscheint ein Wert wie z.B. 40107 für den 21.10.2009. Ausserdem lässt das mit "if (DateTimeOffset.Now > Datum) (Datum ist die Variable) nicht vergleichen. Fehlermedung „Der Operator „>=“ kann nicht auf Operanden vom Typ „System.DateTimeOffset“ und „string“ angewendet werden.“
Hier noch der Codeabschnitt:
//Aktuelles Datum mit letzten Eintrag vergleichen. Wenn Gleich, dann keine Zellen anhängen.
range = worksheet.get_Range((„D“ + (row - 1)), („D“ + (row - 1)));
object datum = range.Value2;
//Datum vergleichen
if (DateTimeOffset.Now >= datum.ToString())
{
textBox1.Text = („Aktuelles Datum ist höher als eingetragenes.“);
}
else
{
textBox1.Text = („Aktuelles Datum ist gleich oder kleiner als eingetrgenes.“);
}
Habe schon einiges Ver- und gesucht aber nichts passendes gefunden. Hoffe ihr könnt mier weiter helfen.
Vielen Dank für eure Mühen im Voraus!
PS: Sollte ich das falsche Brett gewählt haben bitte ich um Verzeihung ist mein erster Beitrag hier.