Benutzer mit den meisten Antworten
Excel Interop PrintArea in Sheet formatieren

Frage
-
Hallo,
ich erstelle ein beliebiges Excel-Sheet und möchte nach dessen Fertigstellung den Druckbereich festlegen.
Snip...try {
if (CheckSheet()) {
string range = GetColumnFromNumber(StartColumn) + Convert.ToString(StartRow) + ":" +
GetColumnFromNumber(EndColumn) + Convert.ToString(EndRow);
myExcelWorkSheet.PageSetup.PrintArea = range;
int pb = myExcelWorkSheet.VPageBreaks.Count;//BIS HIER KLAPPT ALLES
for (int i = 0; i < pb; i++) {
myExcelWorkSheet.VPageBreaks[i].Delete();// DragOff(XlDirection.xlToRight, 1);
}
}
}Ob ich nun versuche, die Pagebreaks zu löschen oder zu verschieben (lt. Count 1 VBreak vorhanden), schlägt dies mit einer Ausnahme von HRESULT: 0x800A03EC fehl. Wo könnte mein Fehler liegen?
Danke für Eure Tipps,
Klaus
PS: Das Setzen der CultureInfo hat auch nix gebracht :(
No Brain - No Pain
Antworten
-
Hallo Klaus
gemäss folgendem Connect-Eintrag liegt es evtl. an Excel
http://connect.microsoft.com/VisualStudio/feedback/details/298386/hresult-0x800a03ec-exception-when-use-vpagebreaks-delete-or-vpagebreaks-location-method
- Als Antwort markiert Klaus Mayer Donnerstag, 9. September 2010 11:02
Alle Antworten
-
Hallo Klaus
gemäss folgendem Connect-Eintrag liegt es evtl. an Excel
http://connect.microsoft.com/VisualStudio/feedback/details/298386/hresult-0x800a03ec-exception-when-use-vpagebreaks-delete-or-vpagebreaks-location-method
- Als Antwort markiert Klaus Mayer Donnerstag, 9. September 2010 11:02
-
Klaus
suche ggf auch nach ähnlichen Fällen,
vielleicht finden sich 'Workarounds' oder andere Ansätze:
http://www.google.de/search?q=%2B0x800A03EC+%22Page+Breaks%22
http://www.google.de/search?q=%2B0x800A03EC+%2BVPageBreaks
aber dieser Exception-Code scheint sehr häufig für Excel-Automation
http://www.google.de/search?q=%2B0x800A03EC+%2Bexcel
daher kann es irgendwas sein (und ein Grund mehr, Office-Automation zu meiden wo möglich). -
>und ein Grund mehr, Office-Automation zu meiden
Wenn ich's nur könnte! Scheint wirklich ein feiner Bug zu sein. Hab auch beim Googlen nix brauchbares gefunden. Werde wohl statt dessen eine MessageBox einfügen, die den Anwender auf die manuelle Einstellung des druckbaren Bereichs hinweist ;)
Danke Euch allen!
Klaus
No Brain - No Pain -
Als Alternative kann man auch, um die zusätzlichen, automatisch vom Excel eingefügten vertikalen Pagebreaks zu entfernen, unter Sheet.PageSetup.Zoom den Zoom der Seite verringern. Ist in meinem Fall als Workaround erstmal geeignet.
sG,
Klaus
No Brain - No Pain