xlDialogPrint

Pomoč pri izdelavi makrov
Odgovori
jumanjy
Prispevkov: 133
Pridružen: To Jan 12, 2010 1:00 pm

xlDialogPrint

Odgovor Napisal/-a jumanjy »

Pozdravljeni,
Za izbiro na katerem tiskalnku bom tiskal sem si dodal kodo, ki mi prikliče okno z nastavitvami za tiskanje.

Koda: Izberi vse

Application.Dialogs(xlDialogPrint).Show
If vbCancel Then Exit Sub
To okno je velko in z vsemi funkcijami, ki jih ne potrebujem. Če pa uporabim kodo:

Koda: Izberi vse

Application.Dialogs(xlDialogPrinterSetup).Show
If vbCancel Then Exit Sub
Ta mi prikliče samo tiskalnike vendar tukaj ne deluje vrstica za prekinitev, če pritisnem Prekliči.(deluje kakor da vsakič pritisnem Prekliči)
Vprašal bi vas v čem je razlika med temi funkcijami oz. kakšno kodo bi potreboval pri drugi varianti da bi delovalo pravilno tudi če vlučim vrstico vbCancel.
lp.
admin
Site Admin
Prispevkov: 3687
Pridružen: Sr Jul 20, 2005 10:06 pm

Re: xlDialogPrint

Odgovor Napisal/-a admin »

Pozdravljeni,

Vaša koda je napačna in vam deluje čisto slučajno. Vi se namreč nikoli in nikjer sploh ne vprašate, kaj je funkcija sploh vrnila. Pravilna koda je takšna:

Koda: Izberi vse

Sub test()
  Dim rezultat
  rezultat = Application.Dialogs(xlDialogPrint).Show
  If rezultat = False Then
    MsgBox "cancel"
    
    Exit Sub ' prekinjeno
  End If
  
  MsgBox "ok" ' vse je ok
End Sub
lp,
Matjaž Prtenjak
Administrator
Odgovori