IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA : Récupérer une plage de cellules dans un range par son nom


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Utilisateur
    Inscrit en
    Juin 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Utilisateur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2013
    Messages : 3
    Par défaut VBA : Récupérer une plage de cellules dans un range par son nom
    Bonjour,

    Dans une feuille EXCEL, j'ai nommé des plages de cellules, par exemple Plage1, Plage2 contenant chacune une plage de cellules.
    Comment puis-je récupérer dans des objets Range les cellules de ces plages nommées à partir de leur nom ?

    Merci.

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Par défaut
    salut,

    Si tu veux les utiliser en vba c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim plage1 As Range
     
    Set plage1 = Feuil1.Range("plage1")
    Attention ici le "feuil1" est le codename de la feuille 1

    Après je comprends pas bien ce que tu veux faire avec les cellules de ces plages, tu veux récupérer les adresses ? les valeurs ?

    A+

    CB

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Si j'ai bien compris.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Explicit
     
    Public Sub essai()
    Dim nm As Name
    For Each nm In ThisWorkbook.Names
            With nm
                    Debug.Print .Name & " / " & .RefersTo
            End With
    Next nm
    End Sub

  4. #4
    Candidat au Club
    Homme Profil pro
    Utilisateur
    Inscrit en
    Juin 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Utilisateur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2013
    Messages : 3
    Par défaut
    Citation Envoyé par ChristianBosch Voir le message
    salut,

    Après je comprends pas bien ce que tu veux faire avec les cellules de ces plages, tu veux récupérer les adresses ? les valeurs ?

    A+

    CB
    Merci pour cette explication.
    Je veux utiliser les valeurs de chaque cellule en utilisant un objet Range car je sais le faire.
    Par contre, actuellement j'ai codé la plage en dur avec une plage de 10 cellules (dans mon cas HJ41:HS41) qui a toujours la même dimension mais qui se déplace au fur et à mesure que j'alimente ma feuille de calcul.
    En utilisant une plage nommée je peux éviter ce problème mais je n'arrive pas à remplacer cette référence de plage par celle de la plage nommée.

    A suivre...

  5. #5
    Candidat au Club
    Homme Profil pro
    Utilisateur
    Inscrit en
    Juin 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Utilisateur
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2013
    Messages : 3
    Par défaut VBA : Récupérer une plage de cellules dans un range par son nom - Résolu !
    Test effectués, cela fonctionne très bien !

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        Dim Cell As Range (ce n'est peut-être pas nécessaire)
        ' 10 cellules à balayer
        i = 1
        For Each Cell In Range("Plage1")
            TestValeurs(i) = Cell.Value
            i = i + 1
        Next
     
        ' Boucle de vérification de la récupération des 10 valeurs
        For i = 1 To 10
            Debug.Print TestValeurs(i)
        Next
    Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment désigner une plage de cellule dans vba
    Par Rimas23 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/03/2019, 13h14
  2. XL2003 charger rapidement une plage de cellules dans un tableau vba -
    Par martindwi dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/09/2014, 15h41
  3. VBA Effacer une plage de cellules
    Par monsterfab dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/12/2006, 17h18
  4. [VBA] Copier une plage de cellules dans un fichier fermé
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/01/2006, 16h52
  5. [VBA] Parcourir une plage de cellule
    Par Dinytro dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/09/2005, 08h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo