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 :

Erreur 13 inputbox [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2012
    Messages : 241
    Points : 106
    Points
    106
    Par défaut Erreur 13 inputbox
    Bonjour à tous,
    Je reviens vers vous car j'ai une erreur sur mon inputbox en effet dans le cas ou l'utilisateur clique sur Annuler j'ai l'erreur d’exécution 13 incompatibilité de type voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Sub estimation()
     
        Dim DebColonne As Integer
        Dim FinColonne As Integer
        Dim LigneEs As Integer
        Dim LigneFinTab As Integer
        Dim i As Integer
        Dim x As Integer
     
        DebColonne = InputBox("Quel week renseigner ?")
        If DebColonne = "" Then Exit Sub
     
        LigneEs = InputBox("Quel ligne ?")
        If LigneEs = vbCancel Then Exit Sub
     
     
        Sheets("Parametres").Cells(22, 2).Value = DebColonne + 5
        FinColonne = Sheets("Parametres").Cells(23, 2).Value
        Sheets("Parametres").Cells(24, 2).Value = LigneEs
        LigneFinTab = Sheets("Parametres").Cells(26, 2).Value
        x = Sheets("Parametres").Range("B27").Value
     
        For i = DebColonne + 5 To FinColonne
            Cells(LigneEs, i).FormulaLocal = "=INDEX(Temp1!$A$1:$DT$72;EQUIV(B" & x & ";Temp1!$A$1:$A$72;0)+1;" & i & ")"
            Cells(LigneEs, i).Value = Cells(LigneEs, i).Value
        Next i
     
     
    End Sub
    Je pensais que le code suivant traitai le bouton annuler :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     If DebColonne = vbCancel Then Exit Sub
    Merci à vous.

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 138
    Points : 9 972
    Points
    9 972
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    quand on Cancel un inputbox, la chaine retournée est vide

    donc, petit exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MonInput = InputBox("Vas-y, clique sur annuler!")
    If MonInput = "" then Msgbox("Soit tu as annulé, soit tu as validé sans écrire de texte")

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2012
    Messages : 241
    Points : 106
    Points
    106
    Par défaut
    Merci à toi
    Donc si je mets ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DebColonne = vbCancel Then Exit Sub
    Je sors de mon code sans msgbox ?

    Je vais tester

    Merci

    Non j'ai le même message d'erreur

  4. #4
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 138
    Points : 9 972
    Points
    9 972
    Billets dans le blog
    5
    Par défaut
    Non,

    ta condition ne sera pas vérifiée ... fais le test suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub ioi()
    moninput = InputBox("Vas-y cliques sur annuler!")
    MsgBox moninput = vbCancel
    End Sub
    tu confonds MsgBox et InputBox là


    Pourquoi ne pas reprendre la méthode que tu utilises sur ton premier InputBox ... c'est la bonne !

  5. #5
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim DebColonne As Integer
    Dim FinColonne As Integer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     DebColonne = val(InputBox("Quel week renseigner ?"))
        If DebColonne = 0 Then Exit Sub

  6. #6
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2012
    Messages : 241
    Points : 106
    Points
    106
    Par défaut
    Merci
    Il semblerait que le problème vienne de la définition de mes variables.
    En effet, quand je supprime ces deux lignes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Dim DebColonne As Integer
        Dim LigneEs As Integer
    Le code marche parfaitement.

    Une idée du pourquoi du comment ?

  7. #7
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    bonjour,

    val renvoie double et non integer.

  8. #8
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2012
    Messages : 241
    Points : 106
    Points
    106
    Par défaut
    Merci à vous deux
    Le code de rdurupt marche !


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

Discussions similaires

  1. [XL-2003] Inputbox : le bouton annuler provoque une erreur d'éxécution 13
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/05/2012, 08h23
  2. VBA : Select case et inputbox gestion des erreurs
    Par 1ma91nat10n dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/05/2011, 13h07
  3. [E-03] Message d'erreur Inputbox
    Par PUARAI dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/03/2009, 11h30
  4. InputBox et Erreur 423
    Par sergentgarcia dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/09/2008, 15h47
  5. [vba-e] Gestion D'erreur Dans Un Inputbox
    Par KKshi666 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 09/05/2007, 09h39

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