Werte in Excel eintragen

kanada

Mitglied
Hallo,

ich hab mir ein kleines Programm geschrieben, mit dem ich aus mehreren System-Dateien bestimmte Werte auslesen kann und diese dann in eine Excel eintragen möchte und vergleichen mit den zuvor eingegeben Werten. Um zu sehen, wenn sich was, wann, wie, wo, geändert hat.

Die Werte auslesen aus der Excel Datei kein Problem, Werte eintragen geht auch, nur passt etwas mit der Formatierung nicht.

Im Bild unten ist folgendes zu sehen. In der ersten Zeile habe ich die Werte manuell in die Excel eingetragen und alles passt. In der zweiten Zeile haben ich es eintragen lassen.
Code:
ws.Cells[newRow, "C"] = TbBoat1Uoff.Text;
Nun ist dieses aber links bündig und es werden auch die Werte nicht verglichen, daher sind diese Werte rot.

Markiere ich nun zb. eine der entsprechenden Zelle und klicke Enter, ändert sich die Formatierung und alles ist wieder schick (Bild2).

Fülle ich eine Zelle mit folgenden Code passt es sofort, nur bin ich von den Lösung nicht begeistert.
Code:
xRange = ws.get_Range("B" + newRow);
xRange.Select();
SendKeys.SendWait(DateTime.Now.ToString("dd.MM.yyyy"));

Hat noch jemand eine Idee oder Tipp wie man dies noch umsetzen könnte?

Im voraus schon mal lieben Dank und ein schönes Wochenende.
 

Anhänge

  • snip_20160423132855.png
    snip_20160423132855.png
    1,7 KB · Aufrufe: 14
  • snip_20160423133904.png
    snip_20160423133904.png
    1,5 KB · Aufrufe: 7
Scheint mir als wenn Excel den Wert als Text behandelt (Text Formatierung setzt).
Gibt mal die nummerischen Werte als double rüber und das Datum müsste glaub als OLE Format (DateTime.ToOADate) angegeben werden.
 
Danke Spyke, hab beides angewandt und es funktioniert wunderbar! Und mit dem OLE Date Format hab ich sogar mal noch was neues gelernt ;-)
 
Zurück