Wäre froh, wenn Ihr mir einen Tipp geben könntet. In nachfolgendem Code soll die Höhe der ListBox zur Laufzeit berechnet und festgelegt werden. Tut's aber nicht. Wenn ich mir 'nen Halt einbaue und in der VBA-Umgebung schrittweise durchgehe, klappt's. ?
Hat jemand 'ne Idee?
[Wenn ich Dummy-Elemente einbaue, klappt's jedes zweite Mal?]
D a n k e i m V o r a u s .
Private Sub UserForm_Initialize()
'------ Liste der zu druckenden Blätter -------------- Anf
Dim DruckListArray()
zu_drucken_zählen = 0
'relevante zu druckende Blätter zusammenstellen
For BlattNr = 1 To ActiveWorkbook.Worksheets.Count
Set CurrentSheet = ActiveWorkbook.Worksheets(BlattNr)
If Application.CountA(CurrentSheet.Cells) <> 0 And _
CurrentSheet.Visible Then
SheetCount = SheetCount + 1
ReDim Preserve DruckListArray(1 To SheetCount)
DruckListArray(SheetCount) = CurrentSheet.Name
End If
Next BlattNr
DruckDialog.SeitenListBox.List() = DruckListArray
If SheetCount > 12 Then '12 Einträge passen ins Entwurfsdialogfenster
DruckDialog.Height = DruckDialog.Height + (SheetCount - 12) * 13
End If
If DruckDialog.Height > 406.05 Then '406.05 ist bei Auflösung 600*800 maximal
DruckDialog.Height = 406.05
End If
'geht nicht: DruckDialog.SeitenListBox.Height = DruckDialog.Height - 46
SeitenListBox.Height = DruckDialog.Height - 46
'Trick, sonst wird SeitenListBox nicht korrekt dargestellt
kannwegListBox.Visible = False 'Dummy
kannwegListBox.Visible = True 'Dummy
kannwegListBox.Visible = False 'Dummy
DruckDialog.AbbrechenCommandButton.Top = DruckDialog.Height - 55
DruckDialog.OKCommandButton.Top = DruckDialog.Height - 55
'------ Liste der zu druckenden Blätter -------------- End
'------ aktueller Drucker ---------------------------- Anf
aktuellerDrucker = Application.ActivePrinter
'suche Position von "auf" in Druckerbezeichnung
aufPos = InStr(1, aktuellerDrucker, "auf")
aktuellerDrucker = Left(aktuellerDrucker, aufPos - 1)
If Len(aktuellerDrucker) > 20 Then aktuellerDrucker = Left(aktuellerDrucker, 17) + "..."
DruckDialog.aktuellerDruckerLabel = aktuellerDrucker
'------ aktueller Drucker ---------------------------- End
End Sub
OK:
nicht OK:
Die Datei https://www.herber.de/bbs/user/18307.jpg wurde aus Datenschutzgründen gelöscht