Bonjour à tus et à toutes
Excusez moi vous saurez comment trouvé l'index d'une colonne ?
En l'occurrence il s'agit de la dernière colonne du tableau dans le fichier joint si dessous
Même sans le crochet, ça ne donnera jamais le numéro de colonne, par rapport à la feuille, de la dernière colonne du TS (enfin, c'est ce que j'ai compris qu'il voulait), ça donnera juste le nombre de colonnes du TS, me semble-t-il.
après
on constate quoi et c'est ça qui est drôle en fait
si je veux le columns.count ou toute autre propriété d'ailleurs
en restant en range on les a
msgbox range("Tbl_Datas [#Etat]").cells(4) '4 eme cellule de la colonne "Etat"
msgbox range("Tbl_Datas [#Etat]").column &"eme colonne de la feuille"
address de la ligne que j'ajoute
re
ce qu'il faut retenir
l’accès
par le range ("blablabla").listobject'on peut travailler avec les membre de listobject(qui parfois est plus simple) listcolumns(.add)
pour determiner le range c'est tout simplement ".range" comme vous l'avez vu dans mon message précédent
exemple mon tableau structure fait 4 colonnes
j'ajoute une ligne et je met les valeurs en meme temps
with range("tbl_datas").listobject.listcolumns.add.range
.value=array("toto","titi","riri","loulou")
end with
après l’écriture avec évaluation [blabla[truc]] je sais pas je n'ai jamais essayé
mais suppose a juste titre que ajouter une evaluation ne vas pas dans le sens de l'optimisation
Vous donnez tous la même réponse : le nombre de colonnes du TS au lieu du "numéro" de colonne par rapport à la feuille.
Certes, dans ce cas particulier ça fonctionne, mais s'il déplace son tableau, ne serait-ce que d'une seule colonne vers la droite... c'est mort !
Si il s'agit d'un tableau structuré, il n'y pas de colonnes disjointes
Et à mon sens, en comptant les N colonnes appartenant à ce tableau, on obtient forcément le numéro de colonne de la dernière colonne du tableau
NB: Je n'ai ouvert aucune PJ du fil.
J'ai testé sur un ListObject que j'ai créé pour l'occasion.
Sub test()
With Range("tableau1").ListObject
derligtable = .ListRows.Count
dercoltable = .ListColumns.Count
derligfeuille = .ListRows(derligtable).Range.Row
dercolfeuille = .ListColumns(dercoltable).Range.Column
t = "il ya dans " & .Name & vbCrLf & derligtable & " lignes " & _
vbCrLf & dercoltable & " colonnes" & vbCrLf & _
"il se termine en colonne " & dercolfeuille & " et ligne " & derligfeuille & " de la feuille" & vbCrLf & _
"l'entête n'est pas compris dedans "
MsgBox t
End With
End Sub