Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Renommer Tableau copié

spiloides

XLDnaute Nouveau
Bonjour à tous,

J'ai besoin de votre aide pour comprendre cette erreur ...

Voilà le problème :
  1. Je copie plusieurs tableaux grâce à leurs noms, sur une nouvelle page (Tab_machin, Tab_truc, etc..), lors de cette opération les tableaux sont renommés automatiquement par Excel (Tab_machin3, Tab_truc2, etc...).
  2. Pour pouvoir réutiliser ces tableaux copiés, je récupère leurs nouveaux noms en variables.
mais quand je veux faire des modifs sur un tableau ça me retourne une erreur "l'indice n'appartient pas à la sélection"

VB:
Dim monTableau1 As Excel.ListObject
Dim monTableau2 As Excel.ListObject
Dim monTableau3 As Excel.ListObject


Set monTableau1 = ThisWorkbook.Worksheets("SYNTHESE").Range("A4").ListObject
Set monTableau2 = ThisWorkbook.Worksheets("SYNTHESE").Range("A" & derlign + 4).ListObject
Set monTableau3 = ThisWorkbook.Worksheets("SYNTHESE").Range("A" & derligne2 + 4).ListObject

    Range(monTableau1).Select
    ActiveSheet.ListObjects(monTableau1).ShowAutoFilterDropDown = False

Novice en VBA, peut être que je ne procède pas de la bonne manière pour modifier les noms de ces tableaux ...

Merci d'avance pour vos pistes
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Je ne crois pas qu'un ListObject soit muni d'une propriété par défaut. Alors précisez quelle propriété vous voulez appliquer. monTableau1.Name par exemple ? Non parce que c'est idiot vu que Range(MonTableau1.Name) c'est MonTableau.DataBodyRange et ListObjects(monTableau1.Name) c'est tout simplement monTableau1
Pour renommer un tableau il suffit de changer sa propriété Name.
 
Dernière édition:

Discussions similaires

Réponses
6
Affichages
485
Réponses
7
Affichages
772
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…