dank dieses tollen Forums verwende ich seit einiger Zeit einen VBA-Code, der mehrere markierte Tabellenblätter ausdruckt. Vor dem Ausdrucken werden die Zellenhöhen auf den einzelnen Tabellenblättern angepaßt und eine Kopfzeile eingefügt. Das funtioniert super...
Jetzt habe ich auf der 1sten auszudruckenden Seite Zellen verbunden, damit der Zelleninhalt(wird per Formel eingefügt) druckbar ist. Auf dieser Seite funktioniert das Anpassen der Zeilenhöhen nicht mehr. Ich habe recheriert, dass das nicht so einfach ist, wenn verbundene Zellen auf einem Tabellenblatt sind. Eine automatische Anpassung der Zellenhöhe ist unbedingt notwendig, da ich verschiedene Datensätze mit unterschiedlichem Inhalt in die Tabellenblätter einlese.
Toll wäre es wenn die Zellenhöhen angepasst werden könnten, egal ob verbundene Zellen in den markierten Tabellenblättern sind oder nicht, damit die Tabellenblätter flexibel angepaßt werden könnten.
Kann mir jemand weiterhelfen?
Zur Zeit sieht der Code wie folgt aus:
Sub Ergebnis()
Dim wks As Worksheet
Dim objWks As Object
Dim arrWks
Set objWks = CreateObject("Scripting.Dictionary")
For Each wks In Worksheets
If wks.Name Like "Ergebnis*" Then
If wks.Visible Then
objWks(wks.Name) = 0
With wks
.Unprotect "test"
.Cells.SpecialCells(xlCellTypeVisible).Rows.AutoFit
.PageSetup.CenterHeader = "&""Arial,Bold""&10" _
& Sheets("Inhaltsverzeichnis").Range("C2").Value & Chr(10) _
& "Project no: " & Sheets("Inhaltsverzeichnis").Range("C3").Value
.Protect "test", DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
End If
End If
Next wks
arrWks = objWks.keys
Sheets(arrWks).Select
ActiveWindow.SelectedSheets.PrintPreview
ActiveSheet.Select
End Sub