• Initiateur de la discussion Initiateur de la discussion serge
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

serge

Guest
C'est encore moi(serge)
Voila parce qu'en fait j'aime bien essayer de comprendre pourquoi ? ou comment ?
-Dans quel cas doit ont utiliser "For Each" ?
-Doit on toujours utiliser Next aprés ??
J'ai plien d'autres questions mais une chose a la fois, ne pas être trop gourmand. Il faut digérer correctement les infos je pense
MERCI de votre concour car j'ai quelques bouquins mais faut être initié parfois et c'est loin d'être mon cas.
Bye @ +
 
Bonsoir le forum
Bonsoir Serge

Tiré d'un ouvrage :
Repète les instructions comprises entre For Each et Next pour chaque élément d'une COLLECTION

Synthaxe : For Each ObjetInCollection ... Next
Objet : Variable qui pointe chaque objet de la Collection, un à un.
Collection :Nom d'une collection (Sheets - Range ....)
Ex :
For Each vCellule in Selection
vCellule.Value = 5
Next

A la première exécution de la bouclen, vCellule pointe la 1ère cellule de la sélection.
vCellule.value = 5 attribue donc à cette 1ère cellule la valeur 5. A la 2ème exécution de la boucle, vCellule pointe la 2ème cellule de la sélection, et ainsi de suite. La boucle est répétée jusquà ce que tous les objets aient été pointés.

En espérant t'avoir quelque peu aidé. Sinon tu as l'aide en ligne et de très bons bouquins.
@ ++ Eric C
 
Re le forum
Re bonsoir Serge

Oui par exemple.
Soit en A1 la valeur 10

Dans la colonne B, tu saisis des valeurs quelconque B1 : 24 - B2 : 25 - B3 : 15 etc...

Tu désires que les cellules de la colonne B qui contiennent une valeur supérieure à 24 soit multipliées par la valeur de A1 ==> 10. Tu sélectionnes les cellules de la colonne B contenant des valeurs et lances la macro ci après intégrée dans un Module :

Sub ModifierContenu ()
Dim vCellule as Object
For Each vCellule In Selection 'Sélection de la colonne B contenant des valeurs
If vCellule.Value > 24 Then
vCellule.value = vCellule.value * Range("A1") ==> Si valeur de cell > à 24 alors la cell est multipliée par la valeur de A1 en l'occurrence 10
End If
Next ==> prochaine valeur à rechercher
End Sub

@ ++ Eric C
 
merci Eric C
L'horizon VBA s'eclaircit un peu grâce a toi
j'ai encore d'autres questions mais je te laisse tranquille pour ce soir
et je vait déjà mettre en application cette fonction pour voir si je l'utilise correctement MERCI
BYE @+
Bonne soirée @ toi
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour