2011-01-11 10 views
3

Ich schreibe eine Anwendung, die eine vorhandene .xlsx Datei öffnet und in bestimmte Zellen schreibt.Einige Excel-Zellen bleiben unbelegt, mit C#

Einige Zellen schreiben richtig, wo andere einfach leer bleiben?

Irgendwelche Ideen?

Dies ist ein Code-Snippet

Der gleiche Code für die Zellen, die sind und Arent arbeiten, mit der Ausnahme, dass der Index der

geändert
oSheet.Cells[3, 15] = "1"; // this doesnt write to the cell 
oSheet.Cells[7, 7] = "1"; // this writes to the cell 

Alles, was ich denken konnte, ist, dass es eine Formatierung Problem ist in der Excel-Datei?

+2

Könnten Sie Ihren Code posten, der nicht funktioniert? – Nate

+0

Schnellvorschlag: Bearbeiten Sie Ihre Frage so, dass sie den Code enthält, anstatt Kommentare zu verwenden. – Phil

+0

Überprüfen Sie, dass die Zellen nicht gesperrt sind und die Spalten/Zeilen nicht ausgeblendet sind. Überprüfen Sie auch, ob Sie in Zelle [3, 15] und nicht in [15, 3] suchen. Nur als eine Möglichkeit. –

Antwort

1

Anthony hatte Recht, ich hatte meine Spalten und Reihen geschaltet.

1

Ich arbeite seit Jahren in Excel und finde die ganze Zeit Macken wie diese. Wenn Sie in .NET 4.0 sind diese versuchen:

using Excel = Microsoft.Office.Interop.Excel  

//Other Class code 
var range = oSheet.Cells[3, 15]; 
range.Value2 = "1"; 

Ansonsten versuchen Sie dies:

using Excel = Microsoft.Office.Interop.Excel  

//Other Class code 

Excel.Range range = (Excel.Rang)oSheet.Cells[3, 15]; 
range.Value2 = "1"; 

Value2 scheint konsequent zu arbeiten, so dass ich empfehlen im Allgemeinen es zu benutzen.

Prost!

Verwandte Themen