Formatierung von Excel-Blatt mit VBA

Was ich

Excel 2007-Arbeitsblätter.
Info im Bereich A1:C48 (fest) in mehrere Blätter in der gleichen Arbeitsmappe.

, Was ich brauche

Muss ich drucken Sie diese Auswahl in einem Brief Größe Papier mit normalen Margen.
Aber der Zustand ist bin ich verpflichtet zu passen, der die Breite der Auswahl also 3 Spalten auf 1 Seite.
Ich muss immer die Breite der Spalten konstant konstant zu halten Schriftgröße.
Ich möchte dies mit VBA.

Hier ist der code, den ich versuchte:

Sub printing()
    Dim w1 As Single, w2 As Single, w3 As Single
    Application.ScreenUpdating = False
    w1 = 62
    w2 = 24.71
    w3 = 22.14
    For i = 1 To ActiveWorkbook.Worksheets.Count
    Worksheets(i).Activate
    ActiveSheet.Columns(1).ColumnWidth = w1
    ActiveSheet.Columns(2).ColumnWidth = w2
    ActiveSheet.Columns(3).ColumnWidth = w3

    ActiveSheet.Range("A1:C48").Select

    With Worksheets(i).PageSetup
        .PaperSize = xlPaperLetter
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 1
        .LeftMargin = Application.InchesToPoints(0.5)
        .RightMargin = Application.InchesToPoints(0.75)
        .TopMargin = Application.InchesToPoints(1.5)
        .BottomMargin = Application.InchesToPoints(1)
        .HeaderMargin = Application.InchesToPoints(0.5)
        .FooterMargin = Application.InchesToPoints(0.5)
    End With
    Next i
    Application.ScreenUpdating = True
End Sub

Während diesem ändert sich die Größe der Spalten und setzt andere Eigenschaften der Seitenwechsel ist noch unberührt und wenn ich versuche, es zu drucken, Spalte 4 ist ebenfalls enthalten. Ich will nicht manuell ziehen Sie den Seitenumbruch aus als würde dieser die Größe der Zeichen. Ich würde es vorziehen, legen Sie die Spaltenbreiten so, dass es fit letter-Papier mit normalen Margen.

Ich würde wirklich schätzen, Anregungen.

InformationsquelleAutor Deepak | 2012-07-09

Schreibe einen Kommentar