userform im querformat drucken 18.04.2006 13:14:11 Richard Liebe Leute, gibt es eine Möglichkeit, eine Userform im Querformat bzw. angepasst (z.Bsp. auf DIN A4) zu drucken, damit Teile der UF im Ausdruck nicht abgeschnitten werden? Vielen Dank! Gruss Richard
AW: userform im querformat drucken 18.04.2006 16:37:02 Jürgen Hi, screenshot z.B. in Paint einfügen. mfg Jürgen
AW: userform im querformat drucken 18.04.2006 18:07:38 Nepumuk Hallo Richard, null Problemo. Folgenden Code in ein Standardmodul: Option ExplicitPrivate Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" ( _ ByVal wCode As Long, _ ByVal wMapType As Long) As LongPrivate Declare Sub keybd_event Lib "user32" ( _ ByVal bVk As Byte, _ ByVal bScan As Byte, _ ByVal dwFlags As Long, _ ByVal dwExtraInfo As Long)Private Const KEYEVENTF_KEYUP = &H2Private Const VK_MENU = &H12Private Const lngMargin = 1& 'Breite der Seitenränder in cmPublic Sub prcPrintForm(objForm As Object) Dim intAltScan As Integer, intIndex As Integer Application.ScreenUpdating = False intAltScan = MapVirtualKey(VK_MENU, 0&) keybd_event VK_MENU, intAltScan, 0&, 0& keybd_event vbKeySnapshot, 0&, 0&, 0& DoEvents keybd_event VK_MENU, intAltScan, KEYEVENTF_KEYUP, 0& ThisWorkbook.Worksheets.Add Rows.RowHeight = 3 Columns.ColumnWidth = 0.83 With ActiveSheet .Paste With .PageSetup .Orientation = IIf(objForm.Width > objForm.Height, 2, 1) .LeftMargin = Application.CentimetersToPoints(lngMargin) .RightMargin = Application.CentimetersToPoints(lngMargin) .TopMargin = Application.CentimetersToPoints(lngMargin) .BottomMargin = Application.CentimetersToPoints(lngMargin) .HeaderMargin = Application.CentimetersToPoints(0) .FooterMargin = Application.CentimetersToPoints(0) .CenterVertically = True .CenterHorizontally = True .Zoom = 10 For intIndex = 1 To 3 Do Until ExecuteExcel4Macro("Get.Document(50)") > 1 .Zoom = .Zoom + Choose(intIndex, 50, 10, 1) Loop .Zoom = .Zoom - Choose(intIndex, 50, 10, 1) Next End With .PrintOut Application.DisplayAlerts = False .Delete Application.DisplayAlerts = True End With Application.ScreenUpdating = TrueEnd Sub Der Aufruf aus dem Userform z.B. so: Private Sub CommandButton1_Click() Call prcPrintForm(Me)End Sub Gruß Nepumuk Anzeige
AW: userform im querformat drucken 19.04.2006 08:35:22 Richard Hallo Nepumuk, vielen Dank für Deine rasche Hilfe. Ich werde es testen. Gruss Richard