Θέμα: VBA PrintPreview

Εμφάνιση ενός μόνο μηνύματος
  #4  
Παλιά 30-07-14, 11:36
Το avatar του χρήστη Spirosgr
Spirosgr Ο χρήστης Spirosgr δεν είναι συνδεδεμένος
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.321
Προεπιλογή

Καλημέρα
Μιας και το είχα από παλιά και μια εκδοχή χωρίς Array & Loop με χρήση If.

Κώδικας:
Private Sub cmdPrintPreview_Click()
    Dim PR1 As Range, PR2 As Range, PR3 As Range 'Ορισμός μεταβλητών
    Set PR1 = Sheet1.Range("$F$6:$L$16") ' Set στις περιοχές εκτύπωσης
    Set PR2 = Sheet2.Range("$F$6:$L$16")
    Set PR3 = Sheet3.Range("$F$6:$L$16")

    If OptionButton1 Then ' Αν το κουμπί (είναι true = δεν χρειάζεται) τότε
        Unload Me ' Ξεφόρτωσε ώστε να μην υπάρχει διένεξη
        PR1.PrintPreview ' Κάνε προεπισκόπηση (ή εκτύπωση PrintOut)
    End If
    If OptionButton2 Then ' Επανάληψη όσο χρειάζεται [2]
        Unload Me
        PR2.PrintPreview  'Για εκτύπωση  βάζουμε .PrintOut Copies:=1 
        'και αν θέλουμε Αντικατάσταση =1 με Range("Copies1").Value και μια λίστα 
        'πχ 1 έως 10 για επιλογή αντιγράφων)
    End If
    If OptionButton3 Then ' Επανάληψη όσο χρειάζεται [3]
        Unload Me
        PR3.PrintPreview
    End If
End Sub
Αντικατέστησε τα Sheet1,2,3 με Φύλλο 1,2,..κλπ
Μπορείς να τεστάρεις χωρίς εκτυπωτή ως εξής:
Πάμε Πίνακας ελέγχου > Συσκευές και εκτυπωτές > Microsoft XPS Document Writer
και επιλογή σαν κύριο εκτυπωτή.
Κάνε δοκιμή και θα έχεις ένα "εικονικά" εκτυπωμένο αρχείο στην επιφάνεια εργασίας.
Ξαναβάλε τον εκτυπωτή σου σαν κύριο.
Απάντηση με παράθεση