Domino 9 und frühere Versionen > ND8: Entwicklung

Druckbereich in Excel wird nicht mehr erkannt

<< < (3/3)

v_haderer:

--- Zitat von: TRO am 12.08.14 - 10:29:03 ---Das ist ein (bekannter) Bug in Excel (nicht Notes!) bei der Ansteuerung über COM.

Hier ein Code-Schnipsel um das auszubügeln. Ich habe das in meinem Code in zwei Teile trennen müssen, da ich die Excel-datei nach dem ersten Öffnen mehrfach speichern muss, das Setzen der Print-Area darf aber nur beim "finalen" Speichern stattfinden

 
%REM
Excel2010 (und auch schon Excel2007) hat einen Bug: beim Öffnen über workbook.Open "vergisst" Excel den Druckbereich und die Druckwiederholzeilen.
Die stehen zwar intern noch in den NamenPrint_Area und Print_Titles müssen aber von dort geholt und neu gesetzt werden
Darf aber nur im "finalen" speichern gesetzt sein, sonst kommt es zu einer Bereichs-Namen-Fehlermeldung von Excel
%END REM
      
Dim sSheetName As String
Dim sCurrentName As String
Dim sRange As String

Erase g_sAreaList
Erase g_sTitleList

'erster Teil: holen der PrintArea
Forall sheet In g_xlWBook.Worksheets
   sSheetName = sheet.Name
   Forall n In sheet.Names
      sCurrentName = n.Name
      If Instr( sCurrentName, "Print_Area" ) > 0 Then
         sRange = n.RefersTo
         g_sAreaList( sSheetName ) = sRange
      Elseif Instr( sCurrentName, "Print_Titles" ) > 0 Then
         sRange = n.RefersTo
         g_sTitleList( sSheetName ) = sRange
      Else
         '
      End If
   End Forall
End Forall




'andere Sub
'zweiter Teil: Setzen der PrintArea
Forall sheet In g_xlWBook.Worksheets
   sSheetName = sheet.Name
   If Iselement( g_sAreaList( sSheetName ) ) Then
      sRange = g_sAreaList( sSheetName )
      sheet.PageSetup.PrintArea = sRange
   End If
   If Iselement( g_sTitleList( sSheetName ) ) Then
      sRange = g_sTitleList( sSheetName )
      sheet.PageSetup.PrintTitleRows = sRange
   End If
End Forall



hth

Thomas


--- Ende Zitat ---

Hallo Thomas,

habs nach exakt deiner Vorgabe umgesetzt und funktioniert astrein - VIELEN VIELEN DANK!   :)  :)  :)
lg
Viktor

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln