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

ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

  • Initiateur de la discussion Initiateur de la discussion Sebast
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Sebast

XLDnaute Impliqué
Bonsoir à tous,

Par l'instruction ActiveSheet.UsedRange.Select, je définis une zone à imprimer.
Dans la plupart des cas, le résultat attendu est exact mais pour certains onglets, la sélection s'étend au-delà de ce qui devrait être (on le voit par le rectangle noir qui entoure la zone).

Il s'agit de tableaux croisés dynamiques, par définition variables, selon les mois, les années et les différentes dimensions sélectionnées.
Sur certains, la sélection est bonne, sur d'autres, elle est erronée car trop large (les TCD sont pourtant construits sur le même modèle) !
J'ai bien contrôlé qu'il n'y ait pas un caractère parasite caché ...

Quelqu'un a-t-il eu cette même mauvaise surprise et quelle pourrait être la solution ?

Merci d'avance pour vos lumières
 
Re : ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

Bonsoir.
J'ai bien contrôlé qu'il n'y ait pas un caractère parasite caché ...
Alors un format parasite caché peut être ?
La suppression des colonnes et lignes en trop devrait quand même bien régler le problème.
À +
 
Re : ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

Bonjour,

après recherche, effectivement, il y avait bien un format caché, en fait au-delà de mon TCD, j'avais (il y a longtemps) fait un simple calcul, effacé depuis mais visiblement, il y a des traces ...

Je ne pensais pas que ça avait une incidence sur cette instruction !

Merci de m'avoir ouvert les yeux
 
Re : ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

Bonjour,

pour selectioner la plage de cellules contenant un TCD :
Code:
With ActiveSheet
    If .PivotTables.Count > 0 Then .PivotTables(1).TableRange2.Select
End With
bonne journée
@+
 
Re : ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

Bonjour Pierrot93,

un grand merci pour ton aide, qui effectivement résoud mon problème.
Là où ActiveSheet.UsedRange.Select sélectionne tout, yc les éventuels formats alentours donc des colonnes parasites, ton instruction ne sélectionne bel et bien QUE ce qui m'intéresse, à savoir le tableau.

En revanche, ça reste un peu du chinois pour moi : pourquoi PivotTables(1) (pourquoi 1 ?) et TableRange2 (pourquoi 2 ?)
Même si ça marche parfaitement, je voudrais comprendre


Encore merci pour tes lumières
 
Re : ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

Re,

PivotTables(1)
le 1er tcd de la feuille en question, ici est utilisé le numéro d'index du tcd dans la collection de tous les tcd de la feuille... tu peux également utiliser le nom du tcd à placer entre guillemets à la place du 1...

TableRange2 (pourquoi 2 ?)
c'est le nom de la propriété qui renvoie un objet "range" (les cellules), il existe égament la propriété "TableRange1", celle-ci par contre exclu les champs de page du tcd...
 
Re : ActiveSheet.UsedRange.Select ne sélectionne pas la bonne zone

Re,

je comprends désormais un peu mieux. Heureusement que j'ai posté ma question , sinon je me voyais galérer manuellement, persuadé que seule l'instruction ActiveSheet.UsedRange.Select existait pour mon besoin.

Tu m'enlèves une sacrée épine !

Encore merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…