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 supprimer des colonnes si une case est vide [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Septembre 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2017
    Messages : 18
    Par défaut VBA supprimer des colonnes si une case est vide
    Bonjour

    Après une dure journée, je cherche à supprimer 2 colonnes (D et E) si la case D6 est vide.

    j'ai codé comme ceux-ci mais cela ne fonctionne pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Sheets("v_RA").Select
        If MsgBox("Avez vous enlever le séparateur des millier(Ctrl H sur la colonne [Qté non livrée] . par rien)  ?", vbYesNo, "Demande de confirmation") = vbYes Then
                If IsEmpty("D6") = True Then
                Columns("D:D").Select
                Selection.Delete Shift:=xlToLeft
                End If
    Pouvez vous m'aider?

    Merci d'avance.

    Svp

    Sebastien

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut,

    pour la cellule vide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If IsEmpty(Range("D6")) Then
    puis la suppression tu peux passer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("D6").EntireColumn.Delete xltoleft
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Attention, IsEmpty() est une fonction piégeuse.
    Si ta cellule contient une fonction qui renvoie "", IsEmpty() renverra False (y compris si tu ajoute Value à ton Range). Je viens de retester.
    Pour qu'il renvoie True, il faut que la cellule soit réellement vide.

    Il vaut mieux parfois utiliser un simple Range("D6") = "".

  4. #4
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Septembre 2017
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2017
    Messages : 18
    Par défaut
    Merci cela à l'air de fonctionner.

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

Discussions similaires

  1. [XL-2003] supprimer ligne complète si une partie est vide
    Par jauffray.delteil dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/03/2012, 11h15
  2. ne pas imprimer une feuille si une case est vide
    Par kazannova dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/10/2008, 22h27
  3. tableaux:Savoir si une case est vide
    Par pepsi33 dans le forum C++
    Réponses: 6
    Dernier message: 22/11/2007, 20h47
  4. [VBA] Supprimer des lignes dans une table
    Par shadockgreg dans le forum Access
    Réponses: 6
    Dernier message: 22/11/2006, 09h58
  5. [VBA-E] - supprimer des colonnes
    Par romano dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 02/02/2006, 14h22

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