Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Drucken

Drucken
18.08.2008 15:28:00
Klausi
Hallo Leute
Ich habe hier einen Code mit MsgBox die mich fragt ob ich drucken will. Das klappt auch alles aber ich hätte gerne eine änderung. Wenn ich ja drücke sollte eine UF aufgehen wo ich die anzahl der Druckblätter eingeben kann. Bitte um Hilfe.
Klausi

Sub Schaltfläche401_BeiKlick()
Dim frage
frage = MsgBox("Alles Drucken  !!!" & Chr(10) _
& Chr(10) _
& "Nr. 02, 06, 10, 14, 18, 22, 26, 30, 34" & Chr(10) _
& "             06, 22" & Chr(10) _
& Chr(10) _
& " Wollen sie alle Pläne Drucken ?", vbInformation + vbYesNo)
If frage = 6 Then Call AllesDrucken
End Sub


Hier der DruckCode:


Sub AllesDrucken()
Range("AQ3:AQ13").Select
Dim rng As Range
Dim objsh As Worksheet
Set objsh = ThisWorkbook.Sheets("Tabelle1")
With objsh
For Each rng In .Range("AQ3:AQ13")
.Range("AF1") = rng
.PrintOut
Next
End With
Set objsh = Nothing
End Sub


5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Drucken
18.08.2008 23:20:00
Ramses
Hallo
Probier mal
Sub Schaltfläche401_BeiKlick()
    Dim frage As Integer, intP As Long
    frage = MsgBox("Alles Drucken !!!" & Chr(10) _
    & Chr(10) _
    & "Nr. 02, 06, 10, 14, 18, 22, 26, 30, 34" & Chr(10) _
    & " 06, 22" & Chr(10) _
    & Chr(10) _
    & " Wollen sie alle Pläne Drucken ?", vbInformation + vbYesNo)
    If frage = vbYes Then
        intP = InputBox("Wieviele Kopien ?", "Ausdruck Kopien", 1)
        If StrPtr(intP) <> 0 Then
            Call AllesDrucken(intP)
        Else
            MsgBox "Kein Ausdruck weil keine Kopien angegeben wurden !", _
            vbInformation + vbOKOnly, "Abbruch"
        End If
    End If
End Sub


Sub AllesDrucken(pPages As Long)
    Dim rng As Range
    Dim objsh As Worksheet
    Set objsh = ThisWorkbook.Sheets("Tabelle1")
    With objsh
        For Each rng In .Range("AQ3:AQ13")
            .Range("AF1") = rng
            .PrintOut copies: pPages
        Next
    End With
    Set objsh = Nothing
End Sub

Gruss Rainer

Anzeige
AW: Drucken
19.08.2008 16:47:29
Klausi
Hallo Rainer
das ist eine gute idee aber ich bekomme einmal eine Fehlermeldung wenn ich auf abbrechen gehe und eine Fehlermeldund wenn ich den Druck bestätige. Hab dir mal eine Testdatei angehängt. Vieleicht hab ich ja auch einen Fehler gemacht.
Gruß Klausi
https://www.herber.de/bbs/user/54727.xls

AW: Drucken
19.08.2008 21:09:26
Ramses
Hallo
so geht es
Sub Schaltfläche1_BeiKlick()
    Dim frage As Integer, intP As Long
    frage = MsgBox("Alles Drucken !!!" & Chr(10) _
    & Chr(10) _
    & "Nr. 02, 06, 10, 14, 18, 22, 26, 30, 34" & Chr(10) _
    & " 06, 22" & Chr(10) _
    & Chr(10) _
    & " Wollen sie alle Pläne Drucken ?", vbInformation + vbYesNo)
    If frage = vbYes Then
        On Error Resume Next
        intP = InputBox("Wieviele Kopien ?", "Ausdruck Kopien", 1)
        On Error GoTo 0
        Debug.Print StrPtr(intP)
        If intP > 0 Then
            Call AllesDrucken(intP)
        Else
            MsgBox "Kein Ausdruck weil keine Kopien angegeben wurden !", _
            vbInformation + vbOKOnly, "Abbruch"
        End If
    End If
End Sub
Sub AllesDrucken(pPages As Long)
    Dim rng As Range
    Dim objsh As Worksheet
    Set objsh = ThisWorkbook.Sheets("Tabelle1")
    With objsh
        For Each rng In .Range("K1")
            .Range("J1") = rng
            .PrintOut copies:=pPages
        Next
    End With
    Set objsh = Nothing
End Sub

Gruss Rainer

Anzeige
AW: Drucken
19.08.2008 21:57:44
Klausi
Hi danke für eure hilfe
klappt super.
Gruß Klausi

AW: Drucken
19.08.2008 21:23:29
Daniel
Hi
im 2. Makro ist noch ein kleiner Tipfehler:
".PrintOut copies: pPages" muss heißen: ".PrintOut copies:=pPages"
das 1. Makro ist etwas komplexer, um hier eine Reibungsfreien Ablauf beim Abbrechen oder Fehleingabe (Alphabetische Zeichen) zu gewährleisten, müsste man es so umschreiben:

Sub Schaltfläche1_BeiKlick()
Dim frage As Integer, Eingabe As String
frage = MsgBox("Alles Drucken !!!" & Chr(10) _
& Chr(10) _
& "Nr. 02, 06, 10, 14, 18, 22, 26, 30, 34" & Chr(10) _
& " 06, 22" & Chr(10) _
& Chr(10) _
& " Wollen sie alle Pläne Drucken ?", vbInformation + vbYesNo)
If frage = vbYes Then
Eingabe = InputBox("Wieviele Kopien ?", "Ausdruck Kopien", 1)
If IsNumeric(Eingabe) And Eingabe  "0" Then
Call AllesDrucken(CLng(Eingabe))
Else
MsgBox "Kein Ausdruck weil keine Kopien angegeben wurden !", _
vbInformation + vbOKOnly, "Abbruch"
End If
End If
End Sub


Gruß, Daniel
ps: ich hab dein Makro jetzt nicht auf Funktion, sondern nur auf die Fehler geprüft.

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige