Ne trouve pas la bonne ligne

  • Initiateur de la discussion Initiateur de la discussion Cougar
  • 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 !

Cougar

XLDnaute Impliqué
Bonsoir le forum,

Dans ce code je veux que K = une combobox (évident) mais malheureusement cela n'arrive pas ???

k s'arrête toujours à la dernière non-vide (7269) mais la donnée correspondante se trouve à la ligne 6286. Pour cela ne fonctionne pas ?

For k = 2 To .Range("A65536").End(xlUp).Row

If .Cells(k, 1) = Me.Combo1.Text Then
If .Cells(k, 2) = Me.Combo2.Text Then
If .Cells(k, 3) = Me.Combo3.Text Then
If .Cells(k, 4) = Me.Combo4.Text Then
Ligne = k
End If
End If
End If
End If
Next

Merci
 
Re : Ne trouve pas la bonne ligne

Bonjour Cougar, toutes et tous,

Je ne comprends pas bien ton code, tu mets 4 conditions, pour chaque lignes tu testes 4 colonnes, alors si les 4 cellules répondent aux 4 critères tu appliques ligne = k.

A priori, si sur la ligne 6286, tes colonnes 1, 2, 3 et 4 correspondent à tes 4 combobox ca devrait marcher.

Je ne suis pas sur que ma compréhension de ton problème soit la bonne, sinon met un fichier pour que l'on puisse regarder de plus près.

Bonne journée
@+
 
Re : Ne trouve pas la bonne ligne

Cougar à dit:
Bonsoir le forum,

Dans ce code je veux que K = une combobox (évident) mais malheureusement cela n'arrive pas ???

k s'arrête toujours à la dernière non-vide (7269) mais la donnée correspondante se trouve à la ligne 6286. Pour cela ne fonctionne pas ?

For k = 2 To .Range("A65536").End(xlUp).Row

If .Cells(k, 1) = Me.Combo1.Text Then
If .Cells(k, 2) = Me.Combo2.Text Then
If .Cells(k, 3) = Me.Combo3.Text Then
If .Cells(k, 4) = Me.Combo4.Text Then
Ligne = k
End If
End If
End If
End If
Next

Merci
salut
Comme je ne connais pas ta macro, difficile à analyser
donc, voilà comment moi je traiterais le même type de séquence

Dim Flg_test as Boolean
Dim k as Long
Dim Ligne as long
........
Flg_Test =FALSE
For k = 2 To .Range("A65536").End(xlUp).Row

If .Range("A" & K = Me.Combo1.Text _
And .Range("B" & k) = Me.Combo2.Text _
And .Range("C" & k) = Me.Combo3.Text _
And .Range("D" & k) = Me.Combo4.Text Then
Ligne = k
Flg_Test = True
exit for
End If
Next
If Flg_Test =False then
msgbox("pas valeur")
exit sub
endif
..........

J'utilises peu Cells, parce que Cells(x,112) ou Cells(x,120) sont moins parlant que Range("DH" & X) ou Range("DP" & X)

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

Discussions similaires

Réponses
8
Affichages
390
Réponses
4
Affichages
735
Réponses
15
Affichages
786
Réponses
5
Affichages
912
Réponses
3
Affichages
923
Retour