Obtenir la colonne d'un objet type Variant si critère = true
Dfordanger
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Voici mon problème : j'aimerais pouvoir compter le nombre d'occurrence d'une même valeur à l'intérieur d'une plage de cellules et noter au passage les colonnes où l'on trouve cette valeur.
Pour l'instant, ça donne ça :
Pour une raison que j'ignore, la boucle For Each semble poser problème et rien ne s'affiche en cellule G5...
Merci d'avance pour votre aide !
Dfordanger
Voici mon problème : j'aimerais pouvoir compter le nombre d'occurrence d'une même valeur à l'intérieur d'une plage de cellules et noter au passage les colonnes où l'on trouve cette valeur.
Pour l'instant, ça donne ça :
Dim c As Variant 'la valeur qui nous intéresse Dim valueCol As String 'colonne où se trouve la valeur "c" Dim cCount As Integer 'nombre d'occurrences de la valeur "c" valueCol = "" cCount = Application.WorksheetFunction.CountIf(Range("PLAGE"), 5) '(à titre d'exemple, 5 est la valeur que nous recherchons dans le tableau) For Each c in Range("PLAGE") if c=5 then valueCol = valueCol & ", " & c.Column end Next c Range("G5").Value = valueCol 'pour l'instant j'essaye d'inscrire "valueCol" dans une cellule à part pour tester si le système marche end Sub
Pour une raison que j'ignore, la boucle For Each semble poser problème et rien ne s'affiche en cellule G5...
Merci d'avance pour votre aide !
Dfordanger
A voir également:
- Obtenir la colonne d'un objet type Variant si critère = true
- Déplacer colonne excel - Guide
- Trier colonne excel - Guide
- Acronis true image - Télécharger - Sauvegarde
- Colonne word - Guide
- Formule somme excel colonne - Guide
2 réponses
Bonjour, dans cette partie :
Il manque End If (au lieu de end) à la fin de la condition, remplacez par :
if c=5 then
valueCol = valueCol & ", " & c.Column
end
if c=5 then
valueCol = valueCol & ", " & c.Column
End If
Bonjour
De plus
Dim C as Range
dim ValueCol as Integer
C.column te renvoie le numéro de la colonne et non un texte
Si tu veux la lettre (A à Z)
dim valuecol as string
Mid(tacellule.Address, 2, 1)
si tu dépasse la colonne 26
if c.column>26 abd C;column<=52 then valueCol = valueCol & ", " & Mid(tacellule.Address, 2, 2)
Michel
De plus
Dim C as Range
dim ValueCol as Integer
C.column te renvoie le numéro de la colonne et non un texte
Si tu veux la lettre (A à Z)
dim valuecol as string
Mid(tacellule.Address, 2, 1)
si tu dépasse la colonne 26
if c.column>26 abd C;column<=52 then valueCol = valueCol & ", " & Mid(tacellule.Address, 2, 2)
Michel