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-E] Copier une séléction de valeur jusqu'à la prochaine cellule non vide


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 35
    Par défaut [VBA-E] Copier une séléction de valeur jusqu'à la prochaine cellule non vide
    Bonjour,
    J'ai deux feuilles Excel. Une vide que je souhaite remplir(Remplissage) et une (60601) avec les données à sélectionner.
    Je sélectionne ma première ligne à copier et je voudrai que la sélection continue dans que chaque ligne du dessous n'est pas vide.

    Comment faire (via une boucle peut être?)...?

    Voici le début de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Macro1()
     
    Sheets("60601").Select
    Range("B7").Select
    Rows(7).Select
     
    '-> comment continuer ma séléction tant que la ligne du dessous n'est pas vide?
     
    Selection.Copy
    Sheets("Remplissage").Select
    Range("A2").Select
    ActiveSheet.Paste
     
    End Sub

  2. #2
    Membre éclairé
    Homme Profil pro
    Chargé d'Etudes Statistiques
    Inscrit en
    Novembre 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'Etudes Statistiques
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2010
    Messages : 79
    Par défaut
    sous Excel, sélectionne la première cellule, puis fais Fin + Flèche du bas.
    Cela te sélectionne la dernière cellule non-vide de la plage de cellule.
    Regarde ce que ça fait en VBA en enregistrant une macro et tu devrais t'en sortir (avec une boucle For par exemple).

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 35
    Par défaut
    Alors cela descend bien jusqu'à la dernière ligne non vide mais cela ne sélectionne pas les lignes du dessus ... :/

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 22
    Par défaut
    Bonjour,


    Sélectionner une plage de la première à la dernière cellule non-vide d'une colonne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("A1", Range("A1").End(xlDown)).Select
    Range(ActiveCell, ActiveCell.End(xlDown)).Select
    Cela vas peut être t'aider.

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 35
    Par défaut
    Merci Louis !!!
    Oui cela est beaucoup mieux car il sélectionne bien toutes les cellules non vides de la premières colonnes ! =) !!
    Seulement il manque les cellules des colonnes à côtés... :/

    J'ai modifié mon code comme suit mais ça ne marche pas... As-tu une idée?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sheets("60601").Select
    Range("B7:R7").Select
    Range("B7:R7", Range("B7:R7").End(xlDown)).Select
    Range(ActiveCell, ActiveCell.End(xlDown)).Select

  6. #6
    Membre éclairé
    Homme Profil pro
    Chargé d'Etudes Statistiques
    Inscrit en
    Novembre 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chargé d'Etudes Statistiques
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2010
    Messages : 79
    Par défaut
    Oui effectivement je ne t'ai pas précisé la sélection du Range, je pensais que tu le déduirais par toi-même.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sheets("60601").Select
    Range("B7:R7").Select
    Range("B7:R7", Range("B7:R7").End(xlDown)).Select
    Range(ActiveCell, ActiveCell.End(xlDown)).Select
    J'ai mis ton erreur en gras. En effet, Range prend deux cellules en arguments. Or, "B7:R7" et Range("B7:R7")
    Il vaut mieux écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range(Range("B7"), Range("R7").End(xlDown)).Select

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 22
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sheets("60601").Select
    Range("B7:R7").Select  'Sa Sert à quelque chose sa?
    Range("B7:R7", Range("B7:R7").End(xlDown)).Select
    Range(ActiveCell, ActiveCell.End(xlDown)).Select
    Déjà tu sélectionne 2 fois B7:R7 (cf commentaire du code en haut)

    Après je sais pas trop pour plusieurs collones, la solution facile c'est de faire collone par collone (huhu) mais sa doit être faisable plus simplement.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 35
    Par défaut Mais euh....
    J'ai essayé les deux solutions mais il ne séléctionne toujours que la première colonne B7 et pas jusqu'à R7

Discussions similaires

  1. Réponses: 7
    Dernier message: 03/02/2021, 18h34
  2. [VBA][Excel]Copier une feuille dans un nouveau classeur
    Par illight dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/10/2020, 12h51
  3. [XL-2007] Etirer une formule qui affiche la prochaine cellule non-vide
    Par garulf0 dans le forum Excel
    Réponses: 2
    Dernier message: 25/06/2014, 20h21
  4. [VBA-E] Copier valeur jusqu'à la prochaine cellule non vide
    Par desdenova dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/02/2008, 11h22
  5. [VBA-E] Copier une formule de calcul dans toute la ligne
    Par kernel57 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/12/2005, 18h18

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