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 :

Selection d'une feuille entière sauf la première ligne [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier Avatar de backx3
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 173
    Points : 89
    Points
    89
    Par défaut Selection d'une feuille entière sauf la première ligne
    Bonjour,

    J'ai un petit problème au niveau de sélections dans Excel en VBA.
    J'ai une feuille qui contient plein de données (9 200 lignes) sur une dizaine de colones.
    Ma première ligne contient des filtres, et j'aimerais, via une macro filtrer des données, copier les données filtrées, et les coller dans une autre feuille.

    Je sais selectionner la feuille entière, plusieurs colones, plusieurs lignes, mais je ne sais pas selectionner la feuille entière sauf la première ligne.

    Quelqu'un aurait une solution s'il vous plaît ?

    Merci d'avance !

    Pour l'instant voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    'Sheets.Add.Select
     '   Sheets("RQT_TDB_DELAI_2013").Visible = True
      '  Sheets("RQT_TDB_DELAI_2013").Activate
      '
      '  Sheets("RQT_TDB_DELAI_2013").Select
     
        Rows("2:1").Select   <-- C'est ici que je bloque ! :(
        Range(Selection, Selection.End(xlDown)).Select
        Selection.Copy

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 761
    Points : 28 619
    Points
    28 619
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je sais selectionner la feuille entière, plusieurs colones, plusieurs lignes, mais je ne sais pas selectionner la feuille entière sauf la première ligne.
    En utilisant les propriétés Offset et Resize de l'objet Range
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub t()
     Dim rng As Range
     Set rng = ThisWorkbook.Worksheets("Feuil3").Range("A1").CurrentRegion
     ' reconfiguration
     With rng
      Set rng = rng.Offset(1).Resize(.Rows.Count - 1)
     End With
     rng.Select
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre régulier Avatar de backx3
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 173
    Points : 89
    Points
    89
    Par défaut
    Merci pour la réponse rapide. J'ai regardé pour l'offset et le resize et je comprends mieux avec l'exemple.
    Mais à la ligne Set rng = rng.Offset(1).Resize(.Rows.Count - 1), j'ai une erreur d'exécution '9'.

    L'indice n'appartient pas à la sélection.
    J'aurais oublié quelque chose ?

    J'ai modifié le code en selectionnant la cellule A1 manuellement et le code devient:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set rng = ActiveCell.CurrentRegion
      With rng
      Set rng = rng.Offset(1).Resize(.Rows.Count - 1)
     End With
     rng.Select
    Ce code fonctionne, c'est donc la ligne de code "Range("A1")" qui ne fonctionne pas ..

  4. #4
    Membre régulier Avatar de backx3
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 173
    Points : 89
    Points
    89
    Par défaut
    Problème résolu, merci.

    Si quelqu'un a besoin du code le voici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sheets("RQT_TDB_DELAI_2013").Range("A2").Select
     
        Set rng = ActiveCell.CurrentRegion
     ' reconfiguration
     With rng
      Set rng = rng.Offset(1).Resize(.Rows.Count - 1)
     End With
     rng.Select

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 761
    Points : 28 619
    Points
    28 619
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Ce code fonctionne, c'est donc la ligne de code "Range("A1")" qui ne fonctionne pas ..
    Certainement pas.
    Il s'agit peut-être du nom de la feuille (Feuil3) qui n'était pas identique

    Ayant répondu rapidement, je viens de constater que la procédure proposée avait une légère erreur (pourtant testée) mais sans aucune incidence.
    A condition bien entendu que la liste commence en cellule A1 de la feuille nommée [Feuil3].
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub t()
     Dim rng As Range
     Set rng = ThisWorkbook.Worksheets("Feuil3").Range("A1").CurrentRegion 
     ' reconfiguration
     With rng
      Set rng = .Offset(1).Resize(.Rows.Count - 1)
     End With
     rng.Select ' Juste pour le test
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/09/2013, 17h53
  2. Selection d'une feuille Excel spécifique
    Par Tanoak_LaCapuche dans le forum C#
    Réponses: 5
    Dernier message: 04/07/2013, 09h08
  3. Exporter une feuille entière
    Par flamel dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/04/2011, 10h26
  4. Réponses: 4
    Dernier message: 17/02/2010, 10h07
  5. selection d'une feuille d'un JTree
    Par biozaxx dans le forum Composants
    Réponses: 3
    Dernier message: 13/01/2006, 17h48

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