Excel - Power Query - Power Pivot - VBA

VBA05 | Attribuer une mention

Énoncé

  • Thème : Select Case et Do While | Durée : 15 min | Niveau : intermédiaire.
  • Macro à écrire : Mentions.

Travail demandé

  • Parcourir les notes de la colonne B avec une boucle Do While, jusqu'à la première cellule vide.
  • Écrire la mention en colonne C :
    • 16 et plus : Très bien ;
    • de 14 à moins de 16 : Bien ;
    • de 12 à moins de 14 : Assez bien ;
    • de 10 à moins de 12 : Passable ;
    • moins de 10 : Insuffisant.

Corrigé

Sub Mentions()
    Dim i As Long
    Dim note As Double
    Dim mention As String
    i = 2
    Do While Cells(i, 2).Value <> ""
        note = Cells(i, 2).Value
        Select Case note
            Case Is >= 16: mention = "Très bien"
            Case Is >= 14: mention = "Bien"
            Case Is >= 12: mention = "Assez bien"
            Case Is >= 10: mention = "Passable"
            Case Else: mention = "Insuffisant"
        End Select
        Cells(i, 3).Value = mention
        i = i + 1
    Loop
End Sub
  • Select Case s'arrête au premier cas vrai : on teste donc les seuils du plus haut au plus bas.
  • Sans i = i + 1, la boucle ne s'arrête jamais ; le simulateur l'interrompt, Excel se fige (Échap ou Ctrl+Pause pour l'arrêter).

Pour aller plus loin