Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Problême lié à " For each"

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 !

KyFranRD

XLDnaute Occasionnel
bonjour

Je suis assez, pas mal, beaucoup novice en langage VBA. Je me suis donc fais aider pour réaliser ce code qui fonctionne trés bien. Il me permet sur une Feuille1 de regrouper sans doublons une série d'information " commentaires" et "UO concernés" m’étant trés utiles. Voir pièce jointe.


Par contre quelqu'un pourrait il me dire d'où vient mon erreur. Je ne comprends pas.
Pourquoi lorsque je clique sur "regroupement" feuille1, cela agit sur feuille2. Et vis versa. Je veux que lorsque j'appuie sue "Regroupement" feuille1, cela n'agit que sur feuille1.


Merci à l'avance
 

Pièces jointes

Dernière édition:
Re : Problême lié à " For each"

Salut KyFrandRD

Normal, a chaque fois tes fonctions sont recalculées,

Et comme tu ne définit pas l'objet conteneur sur lequel appliquer le calcul,
celui-ci est effectué sur la feuille active => d'où bug

Voici le code à utiliser 😉
Code:
Function conca(titre As String)
  Dim Sht As Worksheet
  ' Exécuter la fonction à chaque calcul
  Application.Volatile
  ' Récupérer le nom de la feuille appelant la fonction
  Set Sht = Application.Caller.Parent
  '
  For Each cel In Sht.Range("b2:b" & Sht.Range("b5000").End(xlUp).Row)
    If cel = titre And InStr(conca, Sht.Cells(cel.Row, "I")) = 0 Then
      conca = conca & Sht.Cells(cel.Row, "I") & " ; "
    End If
  Next
  conca = Left(conca, Len(conca) - 2)
End Function

A+
 
- 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
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…