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

Range Selection variable

  • Initiateur de la discussion Initiateur de la discussion viscere
  • 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 !

V

viscere

Guest
Bonjour,

J'ai un tableau de ce style :

a b c d e f
A . . . . . .
B . .
C

l'axe des ordonnées (a b c d e ..) est variable mais je connais le nombre d'éléments.

Je souhaiterais faire une sélection de ce tableau afin de créer un graphique.

Cependant je souhaite uniquement affichier la ligne C.

Donc j'avais fait comme sélection de la plage de données:

Code:
Range("1:1,4:4").Select

Ca marche sauf que cela me rajoute sur mon echelle des données vide à la fin.

Donc je souhaiterais faire une sélection précise de mon tableau.

j'ai essayé ca :

Code:
    Range(Range("A1", CelluleRes.Offset(, i + 1)), Range("A4", CelluleRes.Offset(3, i + 1))).Select

Erreur sur le Range

et ca :

Code:
Range("A1:" & CelluleRes.Offset(, i + 1), "A4:" & CelluleRes.Offset(3, i + 1)).Select

Erreur sur le Range

et ca :

Code:
Range("A1:" & CelluleRes.Offset(, i + 1) & "," & "A4:" & CelluleRes.Offset(3, i + 1)).Select

Idem . Une idée?

Merci,

LAurent
 
Re : Range Selection variable

Salut,

Pas sur d'avoir bien saisie, le week end approchant, mais je dirai un truc de ce genre :
Range(Cells(1, 1), Cells(4, Range("A4").End(xlToRight).Column)).Select


@+
 
Re : Range Selection variable

re,

Ok, je n'avais pas saisie que tu voulais simplement la premiere et la quatrième ligne. Voici le code :
Range(Range(Cells(1, 1), Cells(1, Range("A4").End(xlToRight).Column)).Address & "," & Range(Cells(4, 1), Cells(4, Range("A4").End(xlToRight).Column)).Address).Select

@+
 
Re : Range Selection variable

Salut
Code:
Dim X as Integer
 
X=iif([IV1].End(xltoleft).column>[IV4].End(xltoleft).column,[IV1].End(xltoleft).column,[IV4].End(xltoleft).column)
Union(Range([A1],cells(1,X)),range([A4],cells(4,X))).select
X= colonne la plus à gauche entre la dernière utilisée en ligne 1 et ligne 4
Après, c'est la même chose que porcinet82 (Salutations 😛 ) avec des notations différentes

Mais... Si tu peux éviter les :
Objets.select
Selection.instructions
en les transformant en Objets.instructions directement (quand c'est possible), ta macro s'en portera mieux.
A+
 
Re : Range Selection variable

Bonjour à tous,

Pour moi, la solution serait (à condition que ton a représente la cellule A1) :
Code:
Dim DerniereColonne As Byte
DerniereColonne = Range("A1").End(xlToRight).Column
Range("A1:" & Range("A1").Offset(0, DerniereColonne - 1).Address & ",A4:" & Range("A1").Offset(3, DerniereColonne - 1).Address).Select

Je ne sais pas si c'est la meilleure solution mais pour moi cela marche quelquesoit le nb de colonnes de la première ligne...
 
Re : Range Selection variable

Salut,

Iil me semble que toutes les réponses sont équivalentes. Par contre, je ne vois pas pourquoi la mienne ne fonctionne pas, je l'ai testée chez moi et elle fonctionne parfaitement...

@+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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