Re,
Voyez l'aide sur l'objet cells et l'objet Range.
Vous verrez que le deuxième paramètre de cells attend un numéro de colonne pas un objet range !
Cells(derLigne, Range("Tableau1[Colonne1]")
.Column)
Vous donnera la cellule de la ligne 'derLigne' de la colonne 'Colonne1' de la feuille
Si derligne = 100 et que Range("Tableau1[Colonne1]").Column =2 vous aurez B100
Cells sans autre objet range parent représente le tableau de toutes les cellules de la feuille, pas celles du tableau.
Range("Tableau1[Colonne1]") vous donne la plage de cellules des données (sans l'entête) de la colonne 'colonne1' du tableau
"Tableau1[Colonne1]" n'est ici qu'un nom de plage comme un autre.
Dernière cellule de 'Tableau1[Colonne1]' :
Range("Tableau1[Colonne1]").Cells(Range("Tableau1[Colonne1]").Cells.Count)
Ce qui est un peu tarabiscoté, non ?
Le paraît moins avec With
With Range("Tableau1[Colonne1]")
.Cells(.Rows.Count) = Valeur
End With
Ce qui revient à par rapport au tableau
NbLignes = Range("Tableau1[Colonne1]").Cells.Count
Range("Tableau1[Colonne1]").Cells(NbLignes)
Ou par rapport à la feuille :
ligne = Range("Tableau1[Colonne1]").Row + Range("Tableau1[Colonne1]").Rows.Count - 1
colonne = Range("Tableau1[Colonne1]").Column
Cells(ligne, colonne) = Valeur
Bon j'espère que vous vous êtes noyé dans tout ceci
Non ?
Et pour faire Bref : n'essayez pas de manger votre omelette avec un marteau, ça passe mal
cordialement