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 :

Créer une macro pour sélectionner une plage [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 10
    Points : 10
    Points
    10
    Par défaut Créer une macro pour sélectionner une plage
    Bonjour,

    Je souhaite sélectionner une plage d'un tableau qui peut être variante.

    J'ai d'abord détecté ma fin de plage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Range("A1").Select
    Selection.End(xlDown).Select
    Selection.Copy
    Range("L1").Select
    ActiveSheet.Paste
    Puis j'ai nommé la case qui renvoi ma dernière ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fin_plage = Sheets("feuil1").Range("L1").Value
    et ensuite j'ai voulu sélectionner ma plage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("R1C1:R" + Str$(fin_plage)+" C2).Select
    Mais ça marche pas.

    Merci de votre aide

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    389
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 389
    Points : 437
    Points
    437
    Par défaut
    Bonjour,

    Je ne comprends pas ce que vous voulez faire
    votre code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Range("A1").Select
    Selection.End(xlDown).Select
    Selection.Copy
    Range("L1").Select
    ActiveSheet.Paste
    peut se remplacer par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("L1") = Range("A1").End(xlDown)
    Que cherchez-vous à faire?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2008
    Messages : 61
    Points : 52
    Points
    52
    Par défaut
    Bonjour,
    je pense qu'il veut sélectionner la colonne jusqu'au dernier élément.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    En fait j'ai 3 colonnes :

    A 1 a
    B 2 b
    C 3 c
    . 4
    . 5
    F 6 f
    . 7

    La par exemple j'ai que 7 lignes, mais je peux aussi bien en avoir 100 le lendemain. Le problème est que la première colonne comporte des trous tandis que la deuxième est complète.

    Donc je souhaite tout selectionné.

    Donc je me suis servi de la 2ème colonne pour obtenir la dernière ligne. J'ai rapporté cette valeur dans une case vide.
    Puis je voulais lui dire qu'il selectionne de la colonne 1 et la troisième colonne jusqu'à la ligne donc j'ai rapporté la valeur.

    Par exemple ici la zone a définir serait : A1:C7
    Mais je peux avoir le lendemain : A1:C100

    J'espère être un peu plus clair.

    Merci de votre aide

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    389
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 389
    Points : 437
    Points
    437
    Par défaut
    Si rééllement il n'y a que 3 colonnes et que la seconde est toujours remplie sans cellule vide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sub sc
    Range("B1").CurrentRegion.Select
    end sub
    sélectionnera la plage A1:C à la dernière ligne non vide de la colonne B

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    En fait il y en a 37 de colonnes et c'est la deuxième colonne qui ne comporte pas de vide.

    Est-ce pareil ?

    en tout cas merci pour votre aide.

    Ha très bien ça marche.

    Encore merci pour votre aide.

    Bonne fin de journée

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/07/2014, 04h32
  2. Créer une macro pour tracer une courbe entre un point X et un point Y
    Par gomart dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/05/2014, 11h35
  3. macro pour sélectionner une valeur dans un TDC
    Par sebogoss dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 19/11/2009, 14h50
  4. Rédiger une macro pour sélectionner une zone d'impresion
    Par lenul78570 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 10/02/2009, 21h27
  5. faire une condition pour arrêter une macro
    Par db48752b dans le forum Access
    Réponses: 11
    Dernier message: 21/09/2006, 20h21

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