Microsoft Excel

Herbers Excel/VBA-Archiv

mit Workbokks.add das Seitenlayout mitbestimmen

Betrifft: mit Workbokks.add das Seitenlayout mitbestimmen von: Hans
Geschrieben am: 26.08.2004 18:55:32

Hallo,

wie kann ich in Excel97 mit Workbooks.Add auch gleichzeitig das Layout, genau die Seitenränder bestimmen?

Ich speichere ein Tabellenblatt einer Mappe neu ab, ohne Formel nur den Inhalt. Dazu öffne ich mit Workbooks.Add eine neue Mappe und kopiere den Inhalt der Tabelle hinein, leider wird das Seitenlayout nicht übernommen, es wird irgendein fixer voreingestellter Wert übernommen, ich hätte aber gern einen anderen Seitenrand.



Danke und Gruß Hans

  


Betrifft: AW: mit Workbokks.add das Seitenlayout mitbestimmen von: WH
Geschrieben am: 26.08.2004 23:29:17

Nach dem Reinstellen des Sheets kannst du einen Code wie der unten ausführen....
am besten mit dem Recorder aufzeichnen und die Einstellung treffen, oder noch besser: vorher die ganzen Werte vom alten Blatt auslesen und dann aufs neue übertragen....

'Übertragen, z.B.
leftMargin = ActiveSheet.PageSetup.LeftMargin
'Sheet kopieren und neue Mappe erzeugen und einfügen
newSheet.PageSetup.LeftMargin = leftMargin

'Beispielcode für Seitenränder - aufgezeichnetes Makro
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.590551181102362) 'SEITENRÄNDER
.RightMargin = Application.InchesToPoints(0.590551181102362)
.TopMargin = Application.InchesToPoints(0.78740157480315)
.BottomMargin = Application.InchesToPoints(0.78740157480315)
.HeaderMargin = Application.InchesToPoints(0.31496062992126)
.FooterMargin = Application.InchesToPoints(0.31496062992126)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = -3
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
End With
End Sub


  


Betrifft: AW: mit Workbokks.add das Seitenlayout mitbestimmen von: Hans
Geschrieben am: 27.08.2004 19:30:53

Hallo WH,
danke, das werde ich mal probieren ob ich damit zurechtkomme, ansonsten melde ich mich wieder
Gruß Hans


  


Betrifft: AW: mit Workbokks.add das Seitenlayout mitbestimmen von: Hans
Geschrieben am: 29.08.2004 10:56:04

Hallo WH,

ich habs soweit geschafft daß das neue Tabellenblatt die Gewünschten Seitenränder hat.
Der Ausdruck stimmt trotzdem nicht, auch Seitenansicht zeigt es schon, der Rechte Rand ist zu groß, der linke zu klein. Im Orginal RE 1,5cm LI 2cm , beim kopierten RE ca 2,3cm LI ca 1,9cm.
Wenn ich die ganze Sache händisch mache, Mappe öffnen, Seite einrichten, markieren, kopieren, einfügen, dann stimmt es überhaupt nicht. Die Spalten haben alle die Standardbreite.

Wo kann die Ursache liegen, was kann ich noch probieren.

Gruß Hans


  


Betrifft: AW: mit Workbokks.add das Seitenlayout mitbestimmen von: andre
Geschrieben am: 29.08.2004 11:08:25

Hallo Hans,
dann hast Du bestimmt den Tip von WH nicht beachtet. Du solltest aufzeichnen, wie Du alles in Deinem Originalblatt einstellst, und diesen code dann über das neue Blatt laufen lassen.
Ansonsten geht alles nach dem Motto:
Sheets(2).Columns(1).ColumnWidth = Sheets(1).Columns(1).ColumnWidth