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

Macros et VBA Excel Discussion :

Test sur tout un formulaire


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 129
    Par défaut Test sur tout un formulaire
    Hello!

    J'ai effectué quelques recherches mais je n'ai pas réussi à trouver de réponse à ma question.

    J'ai 1 un formulaire n°2 qui apparaît lorsqu'on clique sur un bouton dans le formulaire n°1.
    Dans le formulaire n° 2, j'ai tout plein de checkbox.

    Je pourrais faire des tests avec des if pour chaque checkbox, mais je pense qu'il est possible de faire beaucoup plus rapide.
    J'ai essayé ça mais ça ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Dim ChkB As CheckBox
     
    For Each ChkB In Frm2
     
    If ChkB=True Then
     
    Range ("B21").Borders(xlDiagonalDown).LineStyle = xlContinuous
     
    Exit For
     
    End If
     
    Next ChkB
    Ca me dit "Erreur d'exécution '438':
    Propriété ou méthode non gérée par cet objet.

    D'avance merci pour vos contributions.

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Le tuto ci-dessous pourra sans doute t'aider, notamment le chapitre I-B

    Utiliser les contrôles dans un UserForm
    .

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Si ça peut te donner une idée
    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
    Private Sub CommandButton1_Click()
    Dim Ctrl As Control
     
        For Each Ctrl In Frm2.Controls
            If TypeName(Ctrl) = "CheckBox" Then
                Select Case True
                    Case CheckBox1
                        Range("B21").Borders(xlDiagonalDown).LineStyle = xlContinuous
                    Case CheckBox2
                        Range("C21").Borders(xlDiagonalDown).LineStyle = xlContinuous
                    Case CheckBox3
                        Range("D21").Borders(xlDiagonalDown).LineStyle = xlContinuous
                End Select
            End If
        Next
    End Sub
    (Hello Fring)

  4. #4
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 129
    Par défaut
    Hello!

    Tout d'abord, merci pour vos interventions.
    En fait, je ne comprends pas pourquoi ma macro ne fonctionne pas
    Mon formulaire a 19 checkbox.
    Je souhaite que lorsque je clique sur un bouton valider, si aucun checkbox n'est coché, alors une cellule de la feuille excel qui est B21 est barrée en diagonale, sinon (c'est à dire si un checkbox est coché), rien ne se passe.

    Merci

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Alors c'est plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub CommandButton1_Click()
    Dim Ctrl As Control, ok as boolean
     
        For Each Ctrl In Frm2.Controls
            If TypeName(Ctrl) = "CheckBox" Then
                  ok = ok or Ctrl
                  if ok then exit for
            End If
        Next
     
        if not ok then Range ("B21").Borders(xlDiagonalDown).LineStyle = xlContinuous
    End Sub

  6. #6
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    Bonjour, cavalier

    Citation Envoyé par ouskel'n'or Voir le message
    Alors c'est plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub CommandButton1_Click()
    Dim Ctrl As Control, ok as boolean
     
        For Each Ctrl In Frm2.Controls
            If TypeName(Ctrl) = "CheckBox" Then
                  ok = ok or Ctrl
                  if ok then exit for
            End If
        Next
     
        if not ok then Range ("B21").Borders(xlDiagonalDown).LineStyle = xlContinuous
    End Sub
    il manquerai pas le cas ok ?

Discussions similaires

  1. [SQL-Server] Test sur variable de formulaire
    Par fraizas77 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 30/06/2008, 16h10
  2. [debutant] test sur champ de formulaire vide
    Par eyango dans le forum Access
    Réponses: 1
    Dernier message: 25/08/2006, 18h17
  3. Réponses: 8
    Dernier message: 08/02/2006, 09h13
  4. Test sur formulaire avec liste des erreurs
    Par Nicos77 dans le forum Langage
    Réponses: 37
    Dernier message: 17/11/2005, 10h22
  5. [Dates] Test sur un champ de formulaire
    Par rdams dans le forum Langage
    Réponses: 4
    Dernier message: 15/09/2005, 16h03

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