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 :

probleme avec vba


Sujet :

VBA Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 149
    Points : 108
    Points
    108
    Par défaut probleme avec vba
    Bonjour le forum

    Problème avec une formule vba je ne comprends pas sa réaction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
       Dim Thequestion As Integer
     
       Thequestion = MsgBox("Voulez vous imprimer.", vbYesNo + vbQuestion)
     
            If Thequestion = vbYes Then
     
                DoCmd.OpenReport "E_monetat", acViewNormal, , "[ID]=" & Me.ID.Value
                DoCmd.Close acForm, "F_monformulaire", acSaveYes
     
            ElseIf Thequestion = vbNo Then
                DoCmd.OpenForm "F_monformulaire", acNormal, , 1 = 0, acFormEdit, acWindowNormal
            'Exit Sub
            End If
    Quand je valide mes nouvelles données, il me demande si je veux imprimer

    Quand je réponds "non" je reviens sur une page vierge pas problème

    Mais quand je réponds "oui" il ouvre "E_monetat" en masqué imprime directement sans les données puis referme " E_monetat" tout ça en même temps

    Si quelqu’un pouvait m'aider à comprendre où est mon erreur
    Merci d'avance
    David @+

    et bonne année à tous

  2. #2
    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 600
    Points
    24 600
    Par défaut
    Bonjour,

    Dans un premier temps éviter les tests qui ne servent à rien.
    Le msgbox te renvoi vbYes ou vbNo donc inutile de tester l'un et l'autre,
    Inutile également de créer des variables quand on s'en sert qu'une fois pour ce cas de figure.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
            If MsgBox("Voulez vous imprimer.", vbYesNo + vbQuestion)=vbYes Then
     
                DoCmd.OpenReport "E_monetat", acViewNormal, , "[ID]=" & Me.ID.Value
                DoCmd.Close acForm, "F_monformulaire", acSaveYes
     
            Else
                DoCmd.OpenForm "F_monformulaire", acNormal, , 1 = 0, acFormEdit, acWindowNormal
            'Exit Sub
            End If
    Dans un deuxième temps :
    Pourquoi sauves-tu le formulaire ? tu as fais une modif de structure ? si c'est pour sauver des données ce n'est pas la bonne méthode. De plus c'est un dangereux de fermer un formulaire au moment d'une impression qui en a besoin.
    Au moins mets un Doevents entre les deux.

    Troisième chose :
    Tu réouvre un formulaire apparement ouvert (monformulaire) ? Si c'est pour agir sur ses propriétés, agis-y directement dessus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.mapropriété = mavaleur
    1=0 dans une clause Where j'ai jamais vu et je ne vois pas à quoi ça peut servir sinon à renvoyer Faux, je ne vois toujours pas comment ACCESS va interpréter ça.

    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

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 149
    Points : 108
    Points
    108
    Par défaut
    Bonjour loufab et le forum

    Merci loufab pour les infos que je ne connaissais pas

    Mais mon problème reste le même je vais te dire ce que je veux faire.
    Premièrement faire une vente avec le nom du client ,ses coordonnées, la vente et à la fin de cette vente j'ai un bouton de validation qui me demande si je veux imprimer ou pas.
    Ensuite j'ai un état relié à ce formulaire et quand j'imprime les données que je viens d'entrer l'état s'ouvre avec mes données.
    Pour pouvoir les imprimer.

    Aujourd'hui quand je fais ça l'état s'ouvre soit sans les données soit il m'imprime toutes les ventes enregistrées auparavent.

    Merci d'avance ,j'espère que vous pourrez m'aider.
    david@+

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 121
    Points : 96
    Points
    96
    Par défaut
    Bonjour,

    Pour moi les états ne se font que sur des tables ou des requêtes mais pas sur des formulaires.

    Pourquoi ne pas faire une requête sélection sur la vente concernée et ensuite faire un état basé sur cette requête comme cela tu auras à l'impression le résultat de ta requête.

  5. #5
    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 600
    Points
    24 600
    Par défaut
    bonjour,

    Regarde dans Sources/Etats il y a un article sur ce type d'impression paramétré.

    Cela te permettra de réécrire un code correct et de comprendre comment ça fonctionne.

    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

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 149
    Points : 108
    Points
    108
    Par défaut
    merci

    J'ai pris le chemin le plus simple l'état s'ouvre sur le dernier enregistrement ça
    marche très bien

    merci accord pour les infos et votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme avec vba
    Par Rémick25 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/12/2010, 11h14
  2. [VBA-E] probleme avec la fonction countif
    Par adamm dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 18/02/2006, 09h23
  3. [VBA WORD] Probleme avec un .dot
    Par jagdjg dans le forum VBA Word
    Réponses: 6
    Dernier message: 18/01/2006, 11h07
  4. Probleme avec FtpGetFileSize en VBA
    Par marot_r dans le forum Contribuez
    Réponses: 2
    Dernier message: 12/12/2005, 16h06
  5. [VBA-E] problème avec le sendkeys
    Par darkpocket dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/02/2005, 14h25

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