Plages de données dynamiques VBA

Résolu
hawaïen Messages postés 50 Date d'inscription   Statut Membre Dernière intervention   -  
hawaïen Messages postés 50 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je sais que le sujet a été évoqué pas mal de fois, mais impossible de trouver mon bonheur sur internet. Voici mon problème:

j'ai un tableau avec environ 60 colonnes. On est plusieurs à travailler dessus et chaque personne ne se sert que de certaines valeurs. L'idée est donc d'afficher les colonnes en fonction de l'utilisateur.

Pour l'instant j'ai nommé chaque colonne avec un nom de plage de données.

Pour garder de la souplesse dans le fichier (ajout ou suppression de colonnes), j'ai réalisé une macro qui génère les noms des plages des colonnes en fonction de l'utilisateur. Ce que je souhaite faire c'est récupérer tous ces noms pour qu'ils fassent références à une plage "groupe". Par exemple si l'utilisateur 1 se sert des colonnes A (ut1_1) et B(ut1_2). Ma macro me renvoie ut1_1; ut1_2 qui sont les noms des colonnes A et B.

Maintenant si je souhaite, afficher/masquer ces colonnes, je souhaite définir une plage de données dynamique ut1 qui fait références aux plages ut1_1; ut1_2. C'est là que je suis bloqué.

J'arrive à créer une plage de données ut1, mais impossible de faire références à ut1_1; ut1_2 automatiquement. J'arrive seulement à faire référence à "Ut1_1; ut1_2" sauf que le fait d'avoir des guillemets ne permet pas de faire référence aux bonnes plages.

J'espère avoir été suffisamment clair.
Merci de votre aide,

2 réponses

Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Bonjour

C'est pas très clair mais peut-être:
Dim rng as Range 
Set rng = Union(Range(ut1_1),Range(ut1_2))
0
hawaïen Messages postés 50 Date d'inscription   Statut Membre Dernière intervention   3
 
Bonjour,

merci bien c'est ce que je cherchais. Unifier deux ranges et plus.

Merci,
0