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

Calvus

XLDnaute Barbatruc
Bonsoir le forum,

Si je veux sélectionner 2 plages distinctes, ce code fonctionne :
VB:
  For Each c In .Range("C2:C20,D2:D20")

Or, avec un tableau nommé, le code suivant me sélectionne les 3 colonnes, de C à E.
VB:
  For Each c In .Range([Donnees].Columns(Col).SpecialCells(xlVisible), [Donnees].Columns(Col + 1).SpecialCells(xlVisible))

Ce que je souhaite, évidemment, c'est sélectionner uniquement mes 2 plages distinctes, et non pas de x à y.
J'ai tenté l'écriture avec Cells(), Offset(), Array(), Union(), et chaque fois plantage...

Que faut il faire ?

Merci
 
Bonsoir 00 🙂🙂,

Ça ne fonctionne pas. Comme je le disais, j'ai essayé le Union Range.
Le problème vient du tableau nommé [Donnees]. Je n'arrive pas à trouver la syntaxe correcte.
Du moins la syntaxe fonctionne mais pour une plage continue, pas discontinue.

Merci et à bientôt 😉
 
Bonjour,

dans ta syntaxe qui fonctionne tu lui passe des adresses en texte, dans l'autre des Range.
Il n'interprète pas de la même manière, la 2nde correspond à :
Set pl = Range([A1], [B3]) ' qui défini la plage A1:B3

Ce qui devrait aller :
VB:
Set pl = Union([Donnees].Columns(col).SpecialCells(xlVisible), [Donnees].Columns(col + 1).SpecialCells(xlVisible))
Mais méfie-toi de SpecialCells() qui te génère une erreur si la plage est vide. Teste avant
eric
 
- 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

Discussions similaires

Réponses
1
Affichages
649
Réponses
0
Affichages
638
L
Réponses
9
Affichages
1 K
S
Réponses
5
Affichages
948
J
Réponses
22
Affichages
3 K
jui42
J
Retour