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 :

lancer une macro en fonction si une cellule est vide ou non


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2011
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2011
    Messages : 116
    Points : 71
    Points
    71
    Par défaut lancer une macro en fonction si une cellule est vide ou non
    bonjour à tout le monde...

    je reviens sur un sujet que j'avais déjà soumis mais qui finalement me donne une erreur 13

    jfontaine m'avait proposé une solution qui me convenait parfaitement don je remercie encore mais une fois en pratique ça me renvoi une erreur d'exécution '13' incompatibilité de type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    'l'erreur renvoyé est sur cette ligne 
    If Target.Address = "$D$3" And Target.Value <> "" Then Mamacro 
    End Sub
    alors si je rentre une valeur en D3 et valide ok ça execute bien ma macro...
    Là ou ça me donne une erreur 13 c'est lorsque je vide la cellule...

    Merci pour votre aide

    et bon week end à tous.
    Tim

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Essais comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    If Not Intersect(Target, Range("D3")) Is Nothing Then
        If Range("D3").Value <> "" Then MaMecro
    End If
    End Sub
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  3. #3
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2011
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2011
    Messages : 116
    Points : 71
    Points
    71
    Par défaut
    Super mercatog...comme d'habitude...!!!

    je comprends mieux maintenant.

    bien à toi...

  4. #4
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    J'attendais que tu demande pourquoi tu avais l'erreur 13 sur ton code.
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  5. #5
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2011
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2011
    Messages : 116
    Points : 71
    Points
    71
    Par défaut
    tu es un véritable expert...

    Pourquoi j'ai cette erreur ?

    bien à toi...

  6. #6
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Quand tu as fais cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Target.Address = "$D$3" And Target.Value
    Supposons que sur notre feuille, 2 cellules ou plus en été changées (effacées ou suite à un collage de plusieurs cellules), le code doit tester les 2 conditions
    1. Si l'adresse de Target est D3
    2. Si la valeur de Target est vide

    Or, nous avions changés plusieurs cellules, le premier test passe sans problème mais le blocage est au 2ème puisqu'on teste un tableau (de 2 cellules) avec une chaine de caractère vide
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  7. #7
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Septembre 2011
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Septembre 2011
    Messages : 116
    Points : 71
    Points
    71
    Par défaut
    Merco à toi mercatog...c'est trés clair...
    j'ai adapté et devinnnne...ça marche

    bon week end à toi.

    Tim

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

Discussions similaires

  1. lancer une macro en fonction si une cellule est vide ou non
    Par timtof2011 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/11/2011, 10h01
  2. créer une macro en fonction d'une ligne particulière
    Par antfo dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/03/2010, 17h22
  3. Réponses: 23
    Dernier message: 21/07/2009, 14h19
  4. arréter une macro et initialiser par une macro
    Par potili2 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 26/10/2007, 16h44
  5. [Macro]Mise à jour d'une table à l'aide d'une macro
    Par Jean-Luc80 dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/04/2007, 19h59

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