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 :

si cellule vide supprimer colonne entière VBA [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    361
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 361
    Par défaut si cellule vide supprimer colonne entière VBA
    Bonjour,

    J'ai un classeur 'donnees' qui renvoie des données triées dans le classeur 'program'.
    Je voudrais ajouter au code du classeur 'donnees' un code qui permet de supprimer la ligne entière, dans le cas où il trouve que la cellule de la colonne A est vide .

    Pour cela je pense qu'il faudrait ajouter le code suivant au code du classeur 'donnees':
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Sub effacer()
    For Each c In Sheets("feuil1").Range("A1:A" & Range("A65356").End(xlUp).Row)
    If c = "" Then c.EntireRow.Delete
    Next c
    End Sub
    Mais comment l'intégrer au code déjà existant du classeur 'donnees' pour ne pas faire plusieurs exécutions de différents codes???

    Merci
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 652
    Par défaut
    Bonjour

    pour effacer sans boucler
    http://excel.developpez.com/faq/?pag...eCellLigneVide

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    361
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 361
    Par défaut
    Merci pour ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    'Supprime la ligne complète si les cellules de
    'la colonne A sont vides.
    Dim x As Long
     
    x = Range("A65536").End(xlUp).Row
    Cells.Range("A1:A" & x). _
        SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    c'est bien ce résultat que je voulais mais où l'insérer exactement pour que lorsque j'execute le petit algo. du classeur 'donnees' ça me renvoi bien les données vers le classeur 'program' (comme il fait très bien actuellement) puis qu'il me supprimer ensuite les lignes correspondantes (aux données renvoyés) à la fin automatiquement?

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut
    bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells.Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    c'est a toi de decider a quel moment tu veux excuter cette fonction
    on ne peut pas deviner a ta place

    maintenant cette fonction supprime la ligne entiere ou ce trouve les cellules blanche(vide)

    mais dans ton titre c'est la colonne que tu veux supprimer
    est ce une erreur du titre ou du 1 er code que tu a proposé???????

    si c'est le cas alors pour la colonne en entier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells.Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeBlanks).EntireColumn.Delete
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    361
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 361
    Par défaut
    Actuellement j'ai deux fichier 'donnees' et 'program' :

    lorsqu'on execute le fichier 'donnees' et qu'on selectionne le fichier 'program' qui fait office de fichier de destination, il trie les données qu'il a pour ensuite les envoyés dans le fichier 'program' mais le probleme est qu'on trouve des cellule vide dans la colonne A.

    C'est pour ça que j'aimerais introduire ce code dans le fichier 'donnees' pour qu'il l'execute ce code uniquement après avoir envoyé les données triés dans le fichier 'program'.

    et c'est ça mon probleme maintenant , comment integrer le code que vous me donner pour que lorsque j'execute le fichier 'donnees' ça me revoi les données dans le fichier 'program' d'une part puis ça me supprimer les lignes correspondantes aux cellules de la colonne A vide afin de resulter d'une plage de données complète (sans cellule vide de la colonne A)

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Dans ce cas là c'est à la fin quand les données sont dans le fichier program qu'il faut lancer cette fonction, car je suppose que tu veux garder l'autre fichier intact.
    Alors attention travailles avec des variables classeurs pour ne pas te tromper.

    Au plaisir
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

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

Discussions similaires

  1. Suppression de toutes les lignes avec cellule vide en colonne A
    Par Cyclemmanuel dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/05/2012, 19h43
  2. [XL-2007] recherche cellule vide dans colonne
    Par dandy87 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 27/11/2010, 16h33
  3. Recherche de cellule vide par colonne
    Par ceres02 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/10/2008, 11h05
  4. Copy premiere Cellule vide dans colonne
    Par dvguy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/12/2006, 16h32
  5. [VBA-E]supprimer des cellules vide
    Par garn dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 13/02/2006, 11h56

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