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 :

Récupération Range suite Autofilter


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Oui supprimer les lignes vides après est une idée que je vais tester !

    Par contre la solution que tu donne dans l'autre topic ne corresponds pas à mon besoin, en effet à partir du moment ou il y à autre chose sur la feuille (mise en page avec logo titre qui ne peuvent pas être placé dans l'entête), ça devient plus compliqué.

    Merci pour tes réponses

  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
    13 176
    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 : 13 176
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour ma part, que ce soit pour exporter ou supprimer des lignes d'une liste de données suivant critères, j'utilise les filtres avancés (méthode AdvancedFilter) avec un critère nommé. Bien plus simple à mettre en place en VBA que le filtre simple je trouve.
    L'avantage supplémentaire c'est que pour connaître le nombre qui répond aux critères, on peut utiliser une fonction de la catégorie Base de données qui fonctionne de la même manière que les filtres avancéss avec zone des données et zone des critères.
    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 Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Plus simple l'AdvancedFilter ?
    Déjà le temps de filtre est plus long !
    En plus il faut définir une zone pour mettre les critères....

    @RyuAutodidacte : J'men doutais un peu, ceci ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .SpecialCells(xlCellTypeBlanks).Cells
    Tout simplement parce que il y à des cellules vide sur des lignes qui elles ne sont pas entièrement vides.....

  4. #4
    Membre émérite
    Homme Profil pro
    Directeur
    Inscrit en
    Avril 2003
    Messages
    724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur

    Informations forums :
    Inscription : Avril 2003
    Messages : 724
    Par défaut
    Hello,

    à noter que cette zone de critères, tu peux la définir sur une autre feuille, pour ne pas
    toucher à la feuille qui contient les données.
    Cordialement,

  5. #5
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Yes, bien sur, mais il faut la créé car mes classeurs ne contiennent qu'une seule feuille.
    Et comme indiqué quand je vois le temps de filtre..... Comparé à un filtre classique pour lequel on décoche Vides, il n'y a pas photo c'est hallucinant !

  6. #6
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Hi,
    Citation Envoyé par cerede2000 Voir le message
    Tout simplement parce que il y à des cellules vide sur des lignes qui elles ne sont pas entièrement vides.....
    Tu veux dire qu'il y a comme un(e) résidu/valeur fantôme dans les cellule vides??
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  7. #7
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Citation Envoyé par RyuAutodidacte Voir le message
    Hi,

    Tu veux dire qu'il y a comme un(e) résidu/valeur fantôme dans les cellule vides??
    Non pas du tout, mais dans une ligne, certaines cellules ne sont pas remplis, donc cette ligne dégage également, car dans la sélection xlCellTypeBlanks une des cellules de cette ligne est comprise !

    Bon ben je reste sur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    .Range("$B$12:$N$21").AutoFilter field:=3, Criteria1:="<>"
    nbRowsVisible = .AutoFilter.Range.Columns(3).SpecialCells(xlCellTypeVisible).Count - 1
    Set srcR = .AutoFilter.Range
    Set srcR = srcR.Resize(srcR.Rows.Count - 1).Offset(1).SpecialCells(xlCellTypeVisible)
    Qui me donne entière satisfaction, autant sur le nombre de ligne qu'il reste (nbRowsVisible) que sur la plage finale sélectionné sans la ligne d'entête

  8. #8
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Re cedere,

    Juste quelques petites questions à des fins d'apprentissage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .SpecialCells(xlCellTypeBlanks).Cells
    • Ce code pointe sur quelle colonne ? Est ce la colonne du field:=3?
    Car si c'est le cas on est censé éliminer toutes les cellules vide de cette colonne et donc la ligne entière correspondante à cette cellule , non??

    • j'ai voulu reproduire ton code sur la copie mais j'ai eu une erreur
    Peux tu me mettre une demo en entier du code pour une copie feuil1 à feuil2 stp
    Merci d'avance
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 8
    Dernier message: 03/08/2015, 11h43
  2. [Disque Dur] Récupération fichiers suite à crash disque dur
    Par lansing2 dans le forum Composants
    Réponses: 8
    Dernier message: 10/01/2012, 11h14
  3. Migration sybase V11 - Récupération Login suite à chgt serveur.
    Par Labienus dans le forum Adaptive Server Enterprise
    Réponses: 4
    Dernier message: 20/03/2008, 16h29
  4. Récupération convertion suite plantage
    Par Telemak dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 04/02/2006, 16h30
  5. Réponses: 4
    Dernier message: 09/01/2006, 01h24

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