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-Excel : sélection des colonnes d'une sélection, dans le UsedRange


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 8
    Points : 3
    Points
    3
    Par défaut VBA-Excel : sélection des colonnes d'une sélection, dans le UsedRange
    Bonjour,

    Je souhaiterais développer une macro afin de sélectionner les colonnes à l'intérieur du UsedRange, qui correspondent à la sélection en cours.

    Exemple :
    si j'ai un UsedRange A1:G17
    et que l'utilisateur sélectionne c8:d9, puis active la macro,
    alors je voudrais que la macro me sélectionne c1:d17

    Pouvez-vous m'aider à écrire cette macro ?

    Merci par avance.

  2. #2
    Membre confirmé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Points : 632
    Points
    632
    Par défaut
    tu as essayé avec l'enregistreur de macro ?

  3. #3
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Commodore_Psykopate
    tu as essayé avec l'enregistreur de macro ?
    Malheureusement, j'ai essayé mais Excel me traduit cela en adresses FIXES : donc cela ne vas pas !

  4. #4
    Membre confirmé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Points : 632
    Points
    632
    Par défaut
    eh bien remplace les adresses fixes par des variables

    -edit- peux-tu mettre le code généré ici si tu as encore des problèmes ?

  5. #5
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Commodore_Psykopate
    eh bien remplace les adresses fixes par des variables

    -edit- peux-tu mettre le code généré ici si tu as encore des problèmes ?
    Commodore_psychopate : tu ne me comprend pas :
    Dans cette problématique, utiliser l'enegistreur de macro pour obtenir la base de la macro et la modifier ensuite à la main ne fonctionne PAS DU TOUT.
    C'est vrai que c'est une bonne idée dans certains cas, mais pas ici.

    En fait il faut bien savoir manipuler les fonctions VBA Excel liées aux plages, aux lignes et aux colonnes relatives.
    Pour l'instant, j'ai juste réussi, difficilement, à déterminer une partie du problème, de la façon suivante :

    ' adresse de la cellule ligne 1 correspondant à l'adresse en haut à gauche de la sélection
    Cells(1, ActiveCell.Column).Address

    Il me reste à trouver l'autre extrémité de la sélection (voir l'énoncé de mon problème).

  6. #6
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    HELP : Personne n'aurait la solution ???

  7. #7
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    voir intersect..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub MaSelect()
     Dim r As Range
     Set r = Intersect(ActiveSheet.UsedRange, Selection.EntireColumn)
     If Not r Is Nothing Then r.Select
    End Sub

  8. #8
    Candidat au Club
    Inscrit en
    Août 2006
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 8
    Points : 3
    Points
    3
    Par défaut Super !
    Alors là, chapeau bas à bbil :

    cela marche super bien.

    merci beaucoup

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

Discussions similaires

  1. [VBA-EXcel] classement des noeuds d'une treeview dans l'ordre alphabétique
    Par marsupilami34 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/01/2017, 19h02
  2. [XL-2010] Connaitre les numéros des colonnes d'une sélection multiple en vba
    Par rob1son76 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/07/2014, 11h21
  3. Réponses: 1
    Dernier message: 22/04/2014, 16h32
  4. VBA excel: Ajouter des zéros après une virgule
    Par kimai81 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 17/02/2008, 21h54
  5. VBA EXCEL : Concaténation des cellules d'une colonne
    Par kikaillo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/07/2007, 17h37

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