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 :

Message erreur exécution 13


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2010
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 96
    Par défaut Message erreur exécution 13
    Bonjour à tous,

    J'ai créé avec l'aide des participants de ce forum, un tableau de gestion de contrat de maintenance avec une alerte par email 10 jours avant la date d'envoie d'un préavis, cette fonction fonctionne avec une macro VBA.
    Mais lorque je démarre le classeur le message d'erreur apparait "ERREUR D'EXECUTION 13 INCOMPATIBILITE DE TYPE".

    Ce tableau fonctionne de la manière suivante

    colonne E = début du contrat
    colonne G = tacite reconduction 1 pour oui , 0 pour non
    colonne H = date début période suivant colonne G
    colonne I = date fin période suivant colonne Durée
    colonne K= date envoie préavis suivant colonne I

    Pouvez m'aider et m'expliquer le pourquoi de ce message et comment le résoudre.

    Une autre question comment proteger une formule dans une cellule ou une colonne.

    Ci joint le fichier d'essais.
    D'avance merci.
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert Avatar de rtg57
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2006
    Messages
    1 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 343
    Par défaut
    Bonjour,

    chez moi, le message d'erreur n'apparait pas, mais il semble que les boucles de programme ne s'exécutent pas; probablement parce que mon environnement n'est pas identique au vôtre.
    En tout cas, il faut que vous déboguiez pas à pas votre programme pour trouver à quel instant ce message d'erreur apparait.
    En général, cela arrive lorsqu'on essaie de mettre un Integer dans une String et vice-versa...

    Quant à la protection d'une formule, il faut activer la protection de la feuille ( 'Outils' -> 'Protection' -> 'Protéger la feuille' ). Cela fonctionne en concordance des propriétés des cellules. Par défaut, toutes les cellules sont verrouillées. Cela ne se ressent pas jusqu'à ce que vous protégiez la feuilles, alors il n'est plus possible de les modifier.

    @ bientôt...

  3. #3
    Membre confirmé
    Inscrit en
    Août 2010
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 96
    Par défaut
    Bonjour,

    tout d'abord merci de votre réponse.

    Sincèrement je ne connais pas le VBA, pouvez vous m'expliquer , peut en être en consultant le tableau qui est joint à ma question.

    Cordialement.

    Dom

  4. #4
    Membre Expert Avatar de rtg57
    Homme Profil pro
    Autodidacte
    Inscrit en
    Mars 2006
    Messages
    1 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Autodidacte
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 343
    Par défaut
    Bonsoir,

    j'avais consulté le code VBA de votre classeur, et ce n'est pas du code de débutant ça !

    Bref, en déboguant pas à pas votre code VBA, j'ai constaté que chez moi, il n'exécute pas le programme dans sa totalité, ce qui fait qu'il ne passe pas par la ligne de code entrainant l'erreur 13.

    Par exemple, la ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    With Cdo_Message
     .To = Sheets("H615162").Cells(R, 19).Value 'Récupère l'adresse du destinataire
    /.../
    Manifestement l'objet 'To' attend un type String, or la cellule (R, 19) peut par exemple contenir un nombre. Il serait judicieux de forcer l'envoie d'une chaine de caractères en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .To = CStr(Sheets("H615162").Cells(R, 19).Value) 'Récupère l'adresse du destinataire
    Le même type de problème peut arriver à la ligne concernant l'objet 'HTMLBody'

    @ bientôt...

  5. #5
    Membre confirmé
    Inscrit en
    Août 2010
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Août 2010
    Messages : 96
    Par défaut
    Bonjour

    merci pour ta réponse, mais en fait dans la colonne "date envoie du préavis" il y avait des valeurs autre que les dates, d'où l'erreur.

    Cordialement

    Dom

Discussions similaires

  1. Message Erreur d'exécution
    Par jmde dans le forum VBA Access
    Réponses: 5
    Dernier message: 08/02/2009, 22h43
  2. Message d'erreur exécution requête
    Par GO dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/07/2008, 11h18
  3. Réponses: 3
    Dernier message: 14/02/2008, 10h49
  4. procédure oracle message "Erreur d'exécution 3421"
    Par cvqremy dans le forum VBA Access
    Réponses: 0
    Dernier message: 31/10/2007, 01h35
  5. [Macro]Exécution macro, message Erreur 3441
    Par samca dans le forum IHM
    Réponses: 1
    Dernier message: 25/04/2007, 20h17

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