Problème exercice

Problème exercice - VB/VBA/VBS - Programmation

Marsh Posté le 05-08-2013 à 17:02:06    

Bonsoir, je vous contacte parce que j'ai un problème avec VBA. Je débute juste, et un exercice me tracasse.

 

Je vous explique. Dans une feuille excel, j'ai mis, de A1 à A6, une note comprise entre 1 et 6. Or, de B1 à B6, je voudrais insérer un commentaire pour chacune des notes. J'ai donc, pour l'instant, cela :

Sub commentaires_notes()
    'Variables
    Dim note As Integer, commentaire As String
    note = Range("A1" )
   
    'Commentaire en fonction de la note
    If note = 6 Then
        commentaire = "Excellent résultat !"
    ElseIf note = 5 Then
        commentaire = "Bon résultat"
    ElseIf note = 4 Then
        commentaire = "Résultat satisfaisant"
    ElseIf note = 3 Then
        commentaire = "Résultat insatisfaisant"
    ElseIf note = 2 Then
        commentaire = "Mauvais résultat"
    ElseIf note = 1 Then
        commentaire = "Résultat exécrable"
    Else
        commentaire = "Aucun résultat"
    End If
   
    'Commentaire en B1
    Range("B1" ) = commentaire
End Sub

Le problème de ce code, c'est qu'il me permet juste d'insérer un commentaire pour la première note, en A1. Je ne vois pas du tout comment faire pour aller jusqu'en A6, à part répéter plusieurs fois ce code en changeant de variables "note" et "commentaire". Je suppose qu'il existe un moyen beaucoup plus rapide.

 

Je vous remercie d'avance de votre aide,

 

Aandy


Message édité par Aandy le 05-08-2013 à 17:07:37
Reply

Marsh Posté le 05-08-2013 à 17:02:06   

Reply

Marsh Posté le 06-08-2013 à 08:21:40    

je te propose de faire une boucle for qui va de 1 à 6  
 
au debut de chaque boucle tu remets a jour  
note = Range("A" & i )
 
ensuite perso je suis pas fan des elseif je préfère un select case  
 
je te laisse faire une recherche avec ça je suis sur que tu trouveras ton bonheur  
si tu arrives pas ou si tu as fini hésite pas à venir le dire ;)


---------------
[Ach] Just dance + cam PS4
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed