Optionbutton dans Excel VBA

Résolu
laura -  
 lafamice -
Bonjour,

Je voudrais créer plusieurs boutons d'option (soit 7) et selon le bouton qui est coché, l'utilisateur est renvoyé vers une page, ou une autre, lorsqu'il clique sur un bouton Valider.
J'espère que vous m'aurez compris !

Merci d'avance

5 réponses

  1. nikomania Messages postés 206 Statut Membre 22
     
    Tu crées tes optionboutons dans ta userform puis dans le code de ton bouton valider, tu regardes chaque optionbutton si sa valeur est true ou false avec une série de if...puis tu ouvres la page correspondante (c'est bien d'autres userform que tu veux ouvrir ?)

    un petit bout du code sur lequel je bosse en ce moment :

    'on vérifie que l'utilisateur a coché un choix
    If accueil.OptionButton1.Value = False And accueil.OptionButton2 = False And accueil.OptionButton3.Value = False And accueil.OptionButton4.Value = False Then
    msg = MsgBox("Merci de choisir un type d'analyse", vbExclamation, "Attention")
    Exit Sub
    End If
    'on affiche la userForm qui correspond au choix
    If accueil.OptionButton2.Value = True Then
    accueil.Hide
    marque.Show
    End If
    If accueil.OptionButton1.Value = True Then
    accueil.Hide
    classe_therap.Show
    End If
    If accueil.OptionButton3.Value = True Then
    accueil.Hide
    labo.Show
    End If
    If accueil.OptionButton4.Value = True Then
    accueil.Hide
    generalites.Show
    End If
    0
  2. m@rina Messages postés 27507 Date d'inscription   Statut Modérateur Dernière intervention   11 562
     
    Bonjour,

    Private Sub OptionButton1_Click()
    If OptionButton1.Value = True Then Sheets("Mafeuille").Select
    End Sub

    m@rina
    0
  3. laura
     
    Désolé, une autre petite question, j'aimerai faire pareil mais avec une liste déroulante, c'est à dire que selon le critère selectionner, l'utilisteur sera renvoyé à une page excel
    Merci
    0
    1. nikomania Messages postés 206 Statut Membre 22
       
      select case userform.listederoulante.value
      case "premiere valeur"
      sheets("feuil1").select
      case"deuxieme valeur"
      sheets("feuil2").select
      end select
      0
      1. laura > nikomania Messages postés 206 Statut Membre
         
        euh, je ne comprend pas trop, il faut que j'écrive exactement comme ça????
        Si oui, ça ne marche pas.....
        0
      2. nikomania Messages postés 206 Statut Membre 22 > laura
         
        en fait le select case remplace les blocs if quand il y en a beaucoup...ca épure le code...

        la syntaxe est la suivante

        SELECT CASE le nom de ta liste déroulante.Value
            
             CASE  "la première valeur de ta liste déroulante"
        
                      sheets("la page à afficher").select
        
             CASE  "la deuxième valeur de ta liste déroulante"
        
                      sheets("la page à afficher").select
        
        END SELECT



        Bien sûr tu remplaces ce qu'il y a en italique par les noms de tes objets...

        après je n'ai pas testé si le select marche avec une liste déroulante mais normalement oui...sinon utilises des conditions if...
        0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. laura
     
    Merci beaucoup, ça marche, en tout cas t'es bien calé en informatique et tu réponds du tac au tac, c'est cool
    encore merci
    0
    1. nikomania Messages postés 206 Statut Membre 22
       
      parce que je me fais chier au boulot ^^ je bloque sur mon code à moi et personne ne rep au message que j'ai posté lol
      0
    2. lafamice
       
      j'imagine que ta question est un peu plus difficile que la sienne
      0