VBA catégorie

Résolu/Fermé
Clara - 14 mai 2008 à 20:23
clara95 Messages postés 9 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 18 mai 2008 - 15 mai 2008 à 10:07
Bonjour,

Dans le programme suivant je veux determiner la catégorie sportive à laquelle appartient une personne en fonction de son age. Je souhaite transmettre le message de ma boite de Dialoque(MSGBox) dans une cellule de feuille de calcul de Excel, C1 (feuille1) par exemple
Pouvez-vous m'aider?

Sub TestSelectCase()
Dim Age As Integer
Dim Categorie As String
Age = Range("B2").Value
Dim R As String

Select Case Age
Case Is <= 10
MsgBox "Un enfant de " & Age & "ans appartient à la catégorie des poussins.", _
3, "sportive", "Catégorie sportive", Categorie = "poussins"
Case 11, 12
MsgBox "Un enfant de " & Age & "Ans appartient à la catégorie des benjamins", _
3, "sportive", "catégorie sportive", Categorie = "benjamins"
Case 12, 13
MsgBox "Un enfant de" & Age & "ans appartient à la catégorie des minimes.", _
3, "sportive", "catégorie sportive", Categorie = "minimes"
Case 14, 15
MsgBox " unjeune de " & Age & " ans appartient à la catégorie des cadets.", _
3, "sportive", "Catégorie sportive", Categorie = "cadets"
Case 16, 17
MsgBox " Un jeune de" & Age & " ans appartient à la catégorie des juiniors.", _
3, "sportive", "Catégorie sportive", Categorie = "juniors"
Case 18 To 34
MsgBox "Une personne de " & Age & " ans appartient à la catégorie des seniors.", _
3, "sportive", "Catégorie sportive", Categorie = "seniors"
Case Is >= 35
MsgBox "Une personne de " & Age & "ans appartient à la catégorie des vétérans.", _
3, "sportive", "Catégorie sportive", Categorie = "vétérans"

End Select

'Erreur est ici
Range("B3").Value = "sa catégorie est" & Categorie
End Sub

1 réponse

Utilisateur anonyme
14 mai 2008 à 21:04
Bonjour,

dans la ligne :
Case Is <= 10
MsgBox "Un enfant de " & Age & "ans appartient à la catégorie des poussins.", _
3, "sportive", "Catégorie sportive", Categorie = "poussins"

la partie :
Categorie = "poussins"

est le paramètre [ Context ] de l'instruction MsgBox

Si je comprends bien votre besoin, vous devriez écrire :

Option Explicit

Sub TestSelectCase()

    Dim Age As Integer
    Dim Categorie As String
    Dim R As String

    Age = Range("B2").Value
    
    Select Case Age
        Case Is <= 10
            MsgBox "Un enfant de " & Age & "ans appartient à la catégorie des poussins.", _
            3, "sportive", "Catégorie sportive"
            Categorie = "poussins"
        Case 11, 12
            MsgBox "Un enfant de " & Age & "Ans appartient à la catégorie des benjamins", _
            3, "sportive", "catégorie sportive"
            Categorie = "benjamins"
        Case 12, 13
            MsgBox "Un enfant de" & Age & "ans appartient à la catégorie des minimes.", _
            3, "sportive", "catégorie sportive"
            Categorie = "minimes"
        Case 14, 15
            MsgBox " unjeune de " & Age & " ans appartient à la catégorie des cadets.", _
            3, "sportive", "Catégorie sportive"
            Categorie = "cadets"
        Case 16, 17
            MsgBox " Un jeune de" & Age & " ans appartient à la catégorie des juiniors.", _
            3, "sportive", "Catégorie sportive"
            Categorie = "juniors"
        Case 18 To 34
            MsgBox "Une personne de " & Age & " ans appartient à la catégorie des seniors.", _
            3, "sportive", "Catégorie sportive"
            Categorie = "seniors"
        Case Is >= 35
            MsgBox "Une personne de " & Age & "ans appartient à la catégorie des vétérans.", _
            3, "sportive", "Catégorie sportive"
            Categorie = "vétérans"
    End Select
    
    Range("B3").Value = "sa catégorie est " & Categorie
    
End Sub
'


Lupin
0
clara95 Messages postés 9 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 18 mai 2008
15 mai 2008 à 10:07
Merci de votre aide !! la programmation fonctionne parfaitement.
0