Salut le fil.
Dans un premier temps évite les XXXXX.Select qui vont ralentir les calculs pour rien.
Si tu utilises des tableaux fait le à 100% je te conseille de rajouter des lignes d'entêtes a tes tableaux que tu nommera Broche 1 Broche 2 etc.....
Ensuite tu joue avec ses propriétés:
Par exemple:
Debug.Print Range("YDR014[Broche 1]").Row
te renverra la première ligne de ton tableau sans les entêtes donc dans ton cas = 3
tu veux la dernière ligne de la colonne Broche 2 :
Range("YDR014[Broche 2]").Rows.End(xlUp).Row
Attention tu dois y rajouter la ligne d'entête et la ligne du nom du tableau cette valeur c'est le fameux . Row donc dernière ligne =
With Range("YDR014[Broche 1]")
lg =.Rows.End(xlUp).Row +.Row
End With
Mais il y a mieux encore si ton tableau est bien préparé dès le début tu peux tout simplement faire un
Range("YDR014[Broche 1]").ListObject.ListRows.Add
Ensuite tu notes ce que tu veux dans la cellule
Range("YDR014[Broche 1]").Rows(Range("YDR014[Broche 1]").Rows.count + 1) = "Toto"
Bien entendu des With et End With simplifieront le code
Donc on récapitule d'après ce que tu veux
1- Aller dans une feuille qui elle contient plusieurs tableaux,
Là on ne fait rien
2- Choisir le bon tableau de par son nom.
Là on ne fait rien
3- Dans celui-ci chercher une certaine cellule.
Là on ne fait rien
4- se trouvant dans cette cellule là faire un Ctrl + Flèche du bas,
Là on ne fait rien
5- et dans la cellule dans laquelle on atterira, coller une valeur copiée précedemment.
With Range("YDR014[" & "Broche 1" & "]")
.ListObject.ListRows.Add
.Rows(.Rows.Count + 1).Value = "Ta valeur"
End With
Tu remarqueras que "Broche 1" est à part ce peut être le résultat d'un calcul d'une recherche etc...
Bonne prog...