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 :

Utiliser l'adresse de deux cellules pour selectionner une rangé


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Utiliser l'adresse de deux cellules pour selectionner une rangé
    Bonjour,

    J'essaye de créer une macro sous exel qui demande à l'utilisateur de sélectionner deux cellules; une de début et une de fin afin d'automatiquement copier puis coller la rangée formée par ces deux adresses.

    Je dispose de deux adresse stockés dans deux variables de type string par ex:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Public MemoCellsAdr As String
    Public MemoCellsAdr2 As String
     
    MemoCellsAdr = "$A$10"
    MemoCellsAdr2 = "$A$15"
    mon problème est de sélectionner la rangé formé par ces deux adresses, à savoir:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("MemoCellsAdr :MemoCellsAdr2").select
    Mais cela ne fonctionne pas...Quelqu'un a-t il une idée?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 357
    Points : 417
    Points
    417
    Par défaut
    Bonjour,

    Pourquoi ne demandes-tu pas à l'utilisateur de sélectionner la rangée directement ?

  3. #3
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(MemoCellsAdr & ":" & MemoCellsAdr2).select

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    je dois récupérer le début et la fin de la rangée pour d'autres calculs, cette fonction permet simplement de lui faciliter et d'accélérer les choses...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2008
    Messages : 357
    Points : 417
    Points
    417
    Par défaut
    Bonjour Fring,
    y a-t-il une différence entre ta syntaxe et celle-ci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Range(MemoCellsAdr), Range(MemoCellsAdr2)).Select

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Ça marche nickel..merci à vous

    Les deux fonctionnent, j'ai testé...

  7. #7
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Citation Envoyé par David2304 Voir le message
    Bonjour Fring,
    y a-t-il une différence entre ta syntaxe et celle-ci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Range(MemoCellsAdr), Range(MemoCellsAdr2)).Select
    non, hormis la longueur d'écriture du code, il n'y a pas de différence.
    Il y a 36 manières d'écrire cette syntaxe, par exemple ceci fonctionne aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Cells(Range(memocellsadr).Row, Range(memocellsadr).Column), Cells(Range(memocellsadr2).Row, Range(memocellsadr2).Column)).Select

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Je voudrais à présent rajouter les données de la colonne à droite par exemple si l'utilisateur sélectionne la rangé de l'exemple précédent:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public MemoCellsAdr As String
    Public MemoCellsAdr2 As String
     
    MemoCellsAdr = "$A$10"
    MemoCellsAdr2 = "$A$15"
     
    Range(Range(MemoCellsAdr), Range(MemoCellsAdr2)).Select
    je voudrais que la macro sélectionne la rangé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A10:B15").select
    (ou bien la rangée: )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("B10:B15").select
    Ha je pense avoir la réponse grâce à cette ligne de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Cells(Range(memocellsadr).Row, Range(memocellsadr).Column), Cells(Range(memocellsadr2).Row, Range(memocellsadr2).Column)).Select

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Désolé pour ces questions de débutant et merci pour votre aide je met résolu..

  10. #10
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Oui si au départ tu as A10/A15 et que tu veux sélectionner B10/B15 tu peux faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Cells(Range(memocellsadr).Row, Range(memocellsadr).Column + 1), Cells(Range(memocellsadr2).Row, Range(memocellsadr2).Column + 1)).Select
    mais plus sérieusement...ceci devrait faire l'affaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    memocellsadr = "$A$10"
    memocellsadr2 = "$A$15"
     
    Range(memocellsadr & ":" & memocellsadr2).Offset(0, 1).Select
    ou par exemple ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub test()
    Dim Cel As Range
     
    Set Cel = Application.InputBox("veuillez sélectionner votre plage de cellule", , , , , , , 8)
     
    Cel.Offset(0, 1).Select
     
    End Sub

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/03/2014, 20h51
  2. [XL-2007] Probleme pour selectionner une cellule
    Par pachi44 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 24/06/2010, 14h16
  3. regrouper deux cellules pour ne faire qu'une.
    Par vinssieux dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/05/2008, 13h52
  4. Modification d'une fonction pour selectionner une plage de cellule
    Par jackbauer972 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 01/08/2007, 15h07
  5. Réponses: 6
    Dernier message: 29/06/2007, 12h43

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