selectionner les données d'une colonne

florent@77

XLDnaute Junior
bonjour à tous,

je souhaiterai selectionner d'une colonne en fonction de son intituler

j'ai adapter une macro de ce forum qui me permet de selectionner la premiere cellule en fonction d'un mot

Sub PROD1()

Sheets("RECUP").Activate
mot = Range("A2").Value
Sheets("PROD").Activate
Dim nbc As Integer, i As Integer

nbc = Range("IV1").End(xlToLeft).Column
For i = 1 To nbc
If Cells(1, i).Value = mot Then
Cells(1, i).Select '>selection cellule
'Columns(i).Select> selection colonne entiere

Exit For
End If
Next

End Sub

le problème sur lequel je butte , c'est comment selectionner les valeurs de ma colonne sans selectionner la colonne entiere qui me génère une erreur quand je fais un copier coller

merci d'avance

Florent
 

florent@77

XLDnaute Junior
Re : selectionner les données d'une colonne

bonjour michel , le forum

avec un peu de difficulté, j'ai réussi à combiner ma premiere macro et ta macro michel et cela fonctionne ( je restais sur la selection du mot )

voici ma solution :

Sub PROD1()

Sheets("RECUP").Activate
mot = Range("A2").Value
Sheets("PROD").Activate
Dim nbc As Integer, i As Integer

nbc = Range("IV1").End(xlToLeft).Column
For i = 1 To nbc
If Cells(1, i).Value = mot Then

Range(Cells(1, i), Cells(1, i).End(xlDown)).Select

Exit For
End If
Next
End Sub


Par contre , la selection s'arrête à la premiere cellule vide , y a t il un moyen de remédier à cela ?

Merci des reponses que vous pourriez m'apporter

Florent
 

florent@77

XLDnaute Junior
Re : selectionner les données d'une colonne

RE, à tous

je me suis trouvé une solution qui revient à selectionner les 5000 lignes de la colonnes mais il ne faut pas que ma colonne depasse les 5000 lignes

pour ceux que cela interresse voici mon code

Sub PROD1()

Sheets("RECUP").Activate
mot = Range("A2").Value
Sheets("PROD").Activate
Dim nbc As Integer, i As Integer

nbc = Range("IV1").End(xlToLeft).Column
For i = 1 To nbc
If Cells(1, i).Value = mot Then

Range(Cells(1, i), Cells(1, i).End(xlDown).Offset(5000, 0)).Select

Exit For
End If
Next
End Sub


si quelqu'un a une autre solution .....

merci

Florent
 

Discussions similaires