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 Word Discussion :

Vérifier case cochée avant impression [WD-2013]


Sujet :

VBA Word

  1. #1
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut Vérifier case cochée avant impression
    Bonjour à toutes et à tous,

    Tout d'abord j'aimerais remcercier Heureux-oli pour tous les tutos mis à dispo gratutitement en VBA car étant novice j'ai beaucoup appris grâce à cela !

    Cependant, j'ai un soucis avec une condition que j'aimerais enregister :

    Je souhaiterais, dans un boutton imprimer, qu'il vérifie que soit la checkbox 1, 2 ou 3 soit cochée avant qu'il execute un ActiveDocument.PrintOut

    Je ne sais pas si je suis très clair mais merci par avance pour vos lumières !

    Hugo

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Salut,

    Dans ta routine, tu mets simplement un test

    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Merci !

    Mais je ne dois pas bien m'y prendre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub CommandButton11_Click()
    If Checkbox1 Then
    ActiveDocument.SendMail
    Else
    msgbox "Choisissez un véhicule"
    End If
    End Sub
    Merci

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Salut,

    En mode debug, ça donne quoi ?

    Si tu as trois cases à cocher, dans ce code, tu n'en traite qu'une.

    Ta case à cocher se trouve où, sur le document, un UserForm ?
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  5. #5
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Bien quand j'execute la commande il m'affiche le msgbox quoi case cochée ou non

    Sinon j'ai effectivement 3 cases à vérifier (une seule doit être cochée) mais je voulais tester sur une seule pour voir ce que ça donnerait.

    Ma case se trouve directement dans le document

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Salut,

    Tes cases à cocher sont de quel type (Champ de formulaire hérité, content control ou activeX) ?

    Pero, pour ce genre de chose, je préfère passer par des UserForm's.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  7. #7
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    C'est ni du hérités ni du ActiveX donc très certainnement content control, cela dit j'ai essayé avec du hérité et j'obtiens le même résultat.

    Merci

  8. #8
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Salut,

    Selon le type de case à cocher, on y accède pas de la même manière.

    Pour un champ de formulaire hérité ActiveDocument.FormFields("MaCaseACocher").Result.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  9. #9
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Effectivement, ca fonctionne bien quand je passe sur des objets "formulaires hérités" merci beaucoup

    Mais je serais vraiment intéressé de savoir comment fonctionne la condition avec du content control , j'essaie depuis le début d'AM mais je ne trouve pas

  10. #10
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Salut,

    De cette manière : activedocument.ContentControls(1).Checked
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  11. #11
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Salut !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub CommandButton11_Click()
    If ActiveDocument.ContentControls(1).Checked = True Then
    ActiveDocument.SendMail
    Else
    msgbox "Merci de signer le document"
    End If
    End Sub
    Il me met : Cette propriété est disponible uniquement pour les contrôles de de case à cocher

    J'imagine que c'est par ce que je ne lui ai pas précisé de quelle case je parlais, mais je ne vois pas ou donner cette info dans l'expression

    merci encore

  12. #12
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Par défaut
    Salut,

    Le 1 est l'index du contentcontrol.
    On peut utiliser son nom ("LeNom") au lieu de (1)
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  13. #13
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Bonjour !

    Rien a faire je n'arrive pas à faire réfférence au nom du content control... j'ai opté pour la technique de l'index

    Merci pour ton aide !

    Et pour ce qui se poseraient la question, pour un content control de texte c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveDocument.ContentControls(7).Range = "Cliquez ici pour entrer une date." Then ...

  14. #14
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Re bonjour à ceux qui passent par là !

    Je m'obstine à vouloir trouver une solution mais en vain...

    Existe t'il un autre moyen de sélectionner du content control autre que l'index ?

    Quand j'essaie de remplacer (1) par ("nomducontentcontrol") il ne comprend pas...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub test()
     
    If ActiveDocument.ContentControls("texte").Range = "ok" Then
    MsgBox "hourra!"
    Else
     
    End If
     
     
     
    End Sub

    Contrairement à un formfield lorsque j'utilise un champs de formulaire hérité, où la cela fonctionne bien

  15. #15
    Membre régulier
    Homme Profil pro
    Responsable de projets
    Inscrit en
    Octobre 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable de projets

    Informations forums :
    Inscription : Octobre 2015
    Messages : 9
    Par défaut Sélection de "ContentControls" - Contrôle de contenu
    Si ça peut aider...

    Après plusieurs essais, les contrôles de contenu sont numérotés automatiquement de gauche à droite et de haut en bas
    Ce qui veut dire que si tu en ajoute un au début par exemple, ton "ancien" premier, quel que soit sont type "case à cocher, liste déroulante, etc., devient, de facto, le numéro 2.

    Tu dois donc, pour le contrôler, connaitre sa position (son numéro) et son type

    Pour info, "Title" et "Tag" te renvoient respectivement le titre et la balise de ton contrôle

  16. #16
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Septembre 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2015
    Messages : 28
    Par défaut
    Bonjour EnProjet et merci pour ta réponse

    Je me suis résigné à utiliser les formfieds qui sotn beaucoup plus pratiques bien que moins ergonomique.

    le truc c'est que j'ai entre 15 et 30 champs par formulaire donc la modification est très pénible en cas d'ajout/suppression de champs ...

    Merci en tout cas @+

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

Discussions similaires

  1. Concepteur RAVE sous DELPHI 7 : aperçu avant impression
    Par tarbala dans le forum Composants VCL
    Réponses: 4
    Dernier message: 01/06/2020, 00h37
  2. Aperçu avant impression d'un TRichEdit
    Par PoOky dans le forum Composants VCL
    Réponses: 2
    Dernier message: 31/01/2016, 23h19
  3. Parcourir tableau et vérifier si case cochée
    Par juju1988 dans le forum Débuter
    Réponses: 7
    Dernier message: 16/07/2013, 10h42
  4. Réponses: 6
    Dernier message: 08/03/2011, 13h12
  5. [Débutante] Aperçu avant impression d'un composant
    Par gwendo dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 09/07/2004, 09h52

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