mal wieder eine neue Erkenntnis aus der c#, vs 2010, vsto sparte. Ich habe gerade probier mit einem Range-Objekt ein autofill auszuführen, was aber einfach nicht funktionieren wollte. Bei Microsoft habe ich diese Erklärung für autofill gefunden:
|
Range rng = this.Application.get_Range("E17"); rng.AutoFill(this.Application.get_Range("E17:E20", System.Type.Missing)); |
Das hat auch funktioniert, aber ich brauchte das ja mit für Zellen bzw. ein vorhandenes Range-Objekt.
Somit habe ich einfach den Code von oben für mich abgeändert in:
|
//Range E17 als Cells-Info auslesen 17(Zeile) + 5(Spalte) Range rng = this.Application.Cells(17,5); //Start- und End-Zelle für autofill Range begin = this.Application.Cells[17, 5]; Range end = this.Application.Cells[20, 5]; rng.AutoFill(rng.get_Range(begin, end)); |
Fehlermeldung
Doch da habe ich immer eine Fehlermeldung bekommen, die für mich nichts aussagt!
Also habe ich probiert die einzelnen Bereiche(Range-Objekte) in Excel sichtbar zu machen, in dem ich den Bereich des Range-Objekt selektiert habe.
Und durch debuggen des Codes mir die einzelnen Bereiche in der Excel-Tabelle angeguckt.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
//Range E17 als Cells-Info auslesen 17(Zeile) + 5(Spalte) Range rng = this.Application.Cells(17,5); //Selektieren rng.select(); //Start- und End-Zelle für autofill Range begin = this.Application.Cells[17, 5]; Range end = this.Application.Cells[20, 5]; //Selektieren begin.select(); end.select(); //Zur besseren Kontrolle das Range-Objekt destRange angelegt Range destRange = autoFillRange.get_Range(begin, end); destRange.Select(); rng.AutoFill(destRange); |
Lösung:
„Excel vs.net c# range autofill with cells“ weiterlesen