Contenu dans une plage

Fermé
albelo - 30 mai 2016 à 14:21
 albelo - 30 mai 2016 à 14:26
Bonjour,

En utilisant les réponses à différents sujets, j'aboutis au code suivant qui fonctionne :

Sub CopieDesCellules()

Dim Lig As Long
Dim Col As String
Dim NbrLig As Long
Dim NumLig As Long

Sheets("DOC").Select ' feuille de destination
Cells.Select
Selection.ClearContents

Col = "H" ' colonne de la donnée non vide à tester
NumLig = 0
With Sheets("Liste contetieux à coller") ' feuille source
NbrLig = .Cells(65536, Col).End(xlUp).Row
For Lig = 1 To NbrLig
If .Cells(Lig, Col).Value = "68" Then
.Cells(Lig, Col).EntireRow.Copy
NumLig = NumLig + 1
Cells(NumLig, 1).Select
ActiveSheet.Paste
End If
Next
End With

End Sub

Cependant je souhaite qu'au lieu d'avoir If .Cells(Lig, Col).Value = "68" Then, mettre une plage de cellule contenu dans une autre feuille. j'étais partis sur :
If .Cells(Lig, Col).Value = sheets("DOC").Range(B2:T2) Then mais cela ne fonctionne pas. Auriez vous une solution ?

Merci d'avance pour votre aide

2 réponses

Pierre1310 Messages postés 8554 Date d'inscription lundi 21 décembre 2015 Statut Membre Dernière intervention 21 juillet 2020 639
30 mai 2016 à 14:24
Salut,

Actives d'abord ta feuille en dehors du if.
Pour ce qui est de la comparaison, je ne pense pas que tu puisse comparer une cellule à une place.
Tu peux comparer cellule par cellule d'une plage par contre, à l'aide une boucle each ou for.
0
dac merci je vais me pencher sur la boucle each ou for
0