el boton cancelar del commondialog funciona como un error... te explico cuando pulsas el boton cancelar en el cuadro del commondialog, este genera un codigo de error el cual tu tienes que capturar..... Mejor un ejemplo :
CommonDialog1.Flags = cdlPDHidePrintToFile
CommonDialog1.Flags = cdlPDPageNums
CommonDialog1.CancelError = True
On Error GoTo ErrorImpresion:
CommonDialog1.ShowPrinter
On Error GoTo 0
....
...
...
... Imprimes
Exit Sub
:ErrorImpresion
If Err.Number = 32755 Then
On Error GoTo 0 ´ presiono Cancelar
Else
Mensaje_Error ("Ha ocurido un error No Definido Numero :" & Err.Number & " Descripcion :" & Err.Description & "")
On Error GoTo 0
End If
End Sub
Fijate en el .Cancelerror tienes que ponerlo en True para capturar el Error (Codigo 32755)
Saludos Desde Chile ......