DerCol = Cells(1, Columns.Count).End(xlToLeft).Column
NbCol = [Tbl_Datas].ListObject.ListColumns.Count
Lire cellule:
ValCell = [Tbl_Datas].Item(x,NbCol)
Ecrire cellule :
[Tbl_Datas].Item(Ligne,Colonne) = Valeur
Lire:
ValCell = [Tbl_Datas[Commentaires22]].Item(x)
Ecrire:
[Tbl_Datas[Commentaires22]].Item(x) = Valeur
Pardon camarade, mais je crois que ça donne le nombre de colonnes du tableau structuré, et non "l'index", dans la feuille, de sa dernière colonne.En VBA on peut faire :
Mais s'agissant d'un tableau structuré, il vaut mieux faire :VB:DerCol = Cells(1, Columns.Count).End(xlToLeft).Column
qui permet de s'affranchir des numéros de colonnes.Code:NbCol = [Tbl_Datas].ListObject.ListColumns.Count
( Quel que soit l'emplacement du tableau, NbCol sera toujours le même puisque référencé au tableau lui même )
Ah, OK. Désolé, je m'étais basé uniquement sur la question car je n'ai pas ouvert le fichier.Exact, ça s'applique au fichier joint.
Sub Essai()
DernièreColonne = [Tbl_Datas].ListObject.ListColumns.Count
DernièreLigne = [Tbl_Datas].ListObject.ListRows.Count
' Lire la 4eme valeur de la colonne Etat
ValCell = [Tbl_Datas[Etat]].Item(4)
' Ecrire première cellule de la colonne Commentaires22
[Tbl_Datas[Commentaires22]].Item(1) = "Commentaire"
' Ecrire cellule dernière ligne, dernière colonne
[Tbl_Datas].Item(DernièreLigne, DernièreColonne) = "FIN"
' Relire même cellule
ValCellFin = [Tbl_Datas].Item(DernièreLigne, DernièreColonne)
End Sub
Range("Tbl_Datas").Columns.Count
Oui, mais vous n'avez pas à la préciser après, ce qui revient au même.je suis obligé de préciser le parent devant "ListObjects"
Le monsieur te disait que ton code est moisi, à cause d'un crochet en trop.non ce n'est pas une histoire de crochet