Bonsoir …
Du bon usage du Tableau : passage oblige de la Grande Théorie à la Grande Pratique !
La plupart des intervenants n’utilisent pas les tableaux structurés de la classe LitObjects et pour cause ...
Ceux qui se servent l’éditeur de macro (toujours bien trop bavard) pour apprendre, se retrouvent avec un paquet de lignes utilisant une syntaxe nouvelle consacrée à ce type de classe souvent très lourde donc décourageantes pour beaucoup.
Dans l’exemple traité, avec la syntaxe de base (de la classe Range) simple et connue par tout programmeur un tant soit peu averti, on n’a que très peu de lignes.
Avec les données du tableau TB à recopier dans le tableau TA, 4 lignes, dans la fenêtre des codes dans la feuille cibée, suffisent :
Private Sub Worksheet_Activate()
If Application.CountA([TA]) > 0 Then [TA].Delete
[TB].Copy [TA].Item(1, 1)
End Sub
On peut même ajouter 2 lignes pour vider le tableau récepteur afin d’alléger le classeur. Ici
on passe par :
Private Sub Worksheet_Activate()
[TB].Copy [TA].Item(1, 1)
End Sub
Private Sub Worksheet_Deactivate()
If Application.CountA([TA]) > 0 Then [TA].Delete
End Sub