Résolu Comment effectuer une action sur toute une colonne en vba?

  • Auteur de la discussion stefyc
  • Date de début

stefyc

Nouveau membre
Bonjour,

je suis débutante en vba et n'arrive pas à trouver comment faire que ma fonction s'applique non pas juste aux 30 premières lignes mais à toute une colonne (la A ici).
Voici mon code:
Function mention() As String
Dim note As Single
Dim i As Integer
For i = 1 To 30
note = Worksheets("Feuil1").Cells(i, 1).Value
Select Case note
Case Is < 10
mention = "non admis"
Case 10 To 11.9
mention = "passable"
Case 12 To 13.9
mention = "assez bien"
Case 14 To 15.9
mention = "bien"
Case Is >= 16
mention = "très bien"
End Select
Worksheets("Feuil1").Cells(i, 2) = mention
Next i
End Function

merci beaucoup de votre aide!
 

drul

Obscur pro du hardware
Staff
Meilleure réponse
Salut,
le mieux serait ici de remplacer l'indice de fin de ta boucle par:
Code:
For i = 1 To Sheets("Feuil1").Cells(Application.Rows.Count, 1).End(xlUp).Row
La prochaine fois stp utilise les balise code=vb et /code pour présenter ton programme
 

stefyc

Nouveau membre
Merci beaucoup, c'est parfait!!
Je ne comprends juste pas très bien ce que signifie la fin de ta ligne de code,
Code:
Cells(Application.Rows.Count, 1).End(xlUp).Row
! Sais-tu où je pourrais trouver des explications (je ne veux pas t'embêter davantage!)
Et d'accord pour les balises, je ne savais pas :)

 

drul

Obscur pro du hardware
Staff
"Application.rows.count", retourne le nombre de ligne par feuille (pour excel 2003 c'est 65535, pour excel 2007 c'est beaucoup plus ...)
"End", cherche la fin d'une plage de donnée (pleine ou vide), en l'occurence ça cherche la dernière cellule non vide ta colonne. En prenant ensuite le numéro de ligne de cette cellule avec "row" on obtient l'indice de fin de boucle.
Pour les référence, l'aide du vba est plutôt complète et bien faite, sinon google est ton ami, énormément de site avec des exemples (en anglais la plupart du temps.
Sinon le site de msdn est bien fait, exemple ici avec la méthode end:
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 135
Messages
6 718 109
Membres
1 586 397
Dernier membre
Chachabidou
Partager cette page
Haut