IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Fenêtre "Imprimer" Windows pas modale


Sujet :

VBA Access

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut Fenêtre "Imprimer" Windows pas modale
    Bonjour,
    j'ai un petit soucis qui arrive de temps en temps, pas systématique.
    Je lance une impression depuis un formulaire et la fenêtre Windows pour sélectionner les imprimantes et ses paramètres s'ouvre.
    Le problème c'est que de temps en temps elle s'ouvre en arrière plan.
    Alors là l'utilisateur attend, clique dans tous les sens ça bip et il finit par appeler au secours.
    Un simple Alt Tab ramène le fenêtre devant, mais mes utilisateurs ont du mal avec l'informatique...

    J'ai essayé de passer mes fenêtres Access en non modales, mais là les utilisateurs ferment les fenêtres dans le désordre et finissent par appeler aussi au secours.

    Comment faire pour s'assurer que cette fenêtre Windows passe forcément devant toutes les autres ?

    Merci de vos conseils

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    suggestion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        DoCmd.Minimize  'réduit la fenêtre Access
        'instructions d'impression
        DoEvents  'mise en attente du système
        DoCmd.Maximize  'rétablit la fenêtre Access

  3. #3
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Tu as essayé de changer le thème windows ? Remettre le thème basic par exemple.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  4. #4
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Bonjour,
    les PC ont une install de base, je ne pense pas que le thème ait été changé.
    Ceci dit je ne vois pas trop le lien entre le thème et la fenêtre de choix de l'imprimante ?!

  5. #5
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par Zekraoui_Jakani Voir le message
    suggestion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        DoCmd.Minimize  'réduit la fenêtre Access
        'instructions d'impression
        DoEvents  'mise en attente du système
        DoCmd.Maximize  'rétablit la fenêtre Access
    Bonjour,
    j'utilise ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Imprimer_Click()
    ' j'appelle une méthode pour imprimer
        PrintReport Me.OpenArgs
    End Sub
    Comme s'insère les instructions proposées ?
    Merci

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Citation Envoyé par Carmiel Voir le message
    Bonjour,
    les PC ont une install de base, je ne pense pas que le thème ait été changé.
    Ceci dit je ne vois pas trop le lien entre le thème et la fenêtre de choix de l'imprimante ?!
    Tout simplement parce que ça peut provoquer ce type de problème.

    Il y a quoi dans cette procédure ?
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  7. #7
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    Option Compare Database
    Option Explicit
    '§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
    '§               AU CHARGEMENT/DECHARGEMENT DU Formulaire                    §
    '§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
    Private Sub Form_Load()
        Me.ListeEvènements.Visible = True
        Me.ListeMembres.Visible = False
    End Sub
     
    '*****************************************************************************
    ' SI UNE ERREUR SE PRODUIT ON REFORMURE LE MESSAGE
    '*****************************************************************************
    Private Sub Form_Error(DataErr As Integer, Response As Integer)
        dummy = FormErreur(DataErr, Response, Me)
    End Sub
     
    '§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
    '§                       A L'OUVERTURE DU Formulaire                         §
    '§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
    Private Sub Form_Open(Cancel As Integer)
        DoCmd.MoveSize 0, 0
    End Sub
     
    '*****************************************************************************
    ' BOUTON EXECUTER
    '*****************************************************************************
    Private Sub Valider_Click()
    Dim stRapport, stFiltre As String
    Dim Evènement As Variant
        stFiltre = ""
        If Me.ListeEvènements.ItemsSelected.Count = 0 Then
            stFiltre = ""
        Else
            For Each Evènement In Me!ListeEvènements.ItemsSelected
                If stFiltre = "" Then
                    stFiltre = "[EVENEMENT] = '" & Me!ListeEvènements.ItemData(Evènement) & "'"
                Else
                    stFiltre = stFiltre & " OR [EVENEMENT] = '" & Me!ListeEvènements.ItemData(Evènement) & "'"
                End If
            Next Evènement
        End If
     
    ' je ferme le selecteur de rapport avant d'ouvrir celui là
        DoCmd.Close acForm, "frmSelecteurRapports", acSaveNo
        DoCmd.Close acForm, "frmSelecteurRapportsAdm", acSaveNo
    ' j'ouvre le formulaire dont le nom est passé en argument
    ' mais avant je ferme l'instance précédente
        DoCmd.Close acReport, Me.OpenArgs, acSaveNo
    ' je le réouvre avec le filtre
        On Error Resume Next
        DoCmd.OpenReport Me.OpenArgs, acViewPreview, , stFiltre, acWindowNormal, "NoClose"
        Me.Imprimer.Visible = True
    End Sub
    '*****************************************************************************
    ' IMPRIMER LE REPORT
    '*****************************************************************************
    Private Sub Imprimer_Click()
    ' j'appelle une méthode pour imprimer
        PrintReport Me.OpenArgs
    End Sub
    '*****************************************************************************
    ' FERMER LE Formulaire
    '*****************************************************************************
    Private Sub FERMER_Click()
        DoCmd.Close acReport, Me.OpenArgs, acSaveNo
        DoCmd.Close acForm, Me.Name, acSaveNo
    End Sub
    Le principe est d'ouvrir le rapport en cliquant sur le bouton valider et de l'imprimer.
    Le formulaire est ouvert avec le nom du rapport en paramètre, d'où PrintReport Me.OpenArgs

  8. #8
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par Carmiel Voir le message
    Bonjour,
    j'utilise ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Imprimer_Click()
    ' j'appelle une méthode pour imprimer
        PrintReport Me.OpenArgs
    End Sub
    Comme s'insère les instructions proposées ?
    Merci
    Oups, j'avais pas vu la petite ligne au milieu "'instructions d'impression"
    Je vais faire la modif en ce sens.
    A suivre
    Merci

Discussions similaires

  1. [VB.Net] "Impossible de créer le handle de fenêtre"
    Par cedric_g dans le forum Windows Forms
    Réponses: 4
    Dernier message: 06/04/2006, 12h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo