Erreur de type 13 sur TCD

Bonjour, la maccro si dessous va cherche des date dans un TCD sur la feuille 3, calcule une date et la renvoi sur la feuille 5. Je pense qu'elle marche bien mais j'ai le msg d'erreur suivant:

"erreur d'execution '13' incompatibilité de type"

J'ai quand même des résultat mais il me manque certaines valeur alors que les valeurs sont dans le tcd, ça peut me paraître normale mais si jamais quelqu'un voit quelque chose qui va pas

merci, pour votre support

  Sub recuperation_date_de_besoin()

Sheets("5-resultat final").Select

nbrligne5 = Application.WorksheetFunction.CountA(Range("A:A"))

For i = 2 To nbrligne5
    Sheets("5-resultat final").Select
    couleur5 = Cells(i, 1)
    qte_a_commander5 = Cells(i, 9)

    Sheets("3-tcd").Select
    nbrligne3 = Application.WorksheetFunction.CountA(Range("A:A")) + 1
    nbrcolonne3 = Application.WorksheetFunction.CountA(Range("4:4"))

    For w = 5 To nbrligne3
        If Cells(w, 1) = couleur5 Then
            total3 = 0
            valeur_chercher = Cells(w, nbrcolonne3) - qte_a_commander5
            'faire l'addition
            For j = 3 To nbrcolonne3
                valeur3 = Cells(w, j)
                total3 = total3 + valeur3
                date_commande = Cells(4, j)
                If total3 >= valeur_chercher Then GoTo line100
            Next j
        End If
    Next w

line100:
Debug.Print date_commande

Sheets("5-resultat final").Select
jour = Mid(date_commande, 7, 2)
mois = Mid(date_commande, 5, 2)
annee = Mid(date_commande, 1, 4)
Cells(i, 10) = mois & "/" & jour & "/" & annee

Next i

End Sub
  

Bonjour,

"erreur d'execution '13' incompatibilité de type

Tes variables n'étant pas déclarées, précise bien .value au niveau des Range

Bonjour,

merci pour la réponse masi ça ne marche pas mieux, lors du débogage ça me met erreur sur cette ligne de code :

valeur_chercher = Cells(w, nbrcolonne3) - qte_a_commander5

Précise .value

valeur_chercher = Cells(w, nbrcolonne3).value - qte_a_commander5

peux-tu poster le fichier, ou un extrait ?

Le problème concerne l'execution quand on appuie sur le bouton 2 de la page 5 : récupération de date qui appelle la maccro recuperation_date_de_besoin()

MDP pour maccro: metallica

pour que le fichier passe j'ai du enlever une grande partie de la base de donnée du tcd mais sinon le fichier est tel quel

si vous avez une idée, merci beaucoup

Je confirme il faut qu'il y ait une date en colonne J de la feuille 5 même si il y a de #N/A sur la ligne

merci encore

à un moment donné, qte_a_commander5 prend la valeur a verifier !!!!!!!!!!!!

ajoute un debug.print comme ceci :

    For w = 5 To nbrligne3
        If Cells(w, 1) = couleur5 Then
            total3 = 0
Debug.Print "ici"; w; nbrcolonne3; qte_a_commander5
            valeur_chercher = Cells(w, nbrcolonne3) - qte_a_commander5
            'faire l'addition
            For j = 3 To nbrcolonne3
                valeur3 = Cells(w, j)
                total3 = total3 + valeur3
                date_commande = Cells(4, j)
                If total3 >= valeur_chercher Then GoTo line100
            Next j
        End If
    Next w

à un moment donné, qte_a_commander5 prend la valeur a verifier !!!!!!!!!!!!

ok je comprend le bug

ajoute un debug.print comme ceci :

je maîtrise pas cette fonction, je l'ai rajouter comme indiqué mais j'ai toujours l'erreur d’exécution de type 13

merci pour votre support

Le fait d'ajouter le debug.print permet juste de comprendre ce qui se passe

Pour cela, ouvre aussi la fenêtre d'exécution dans l'éditeur de macro en faisant Ctrl+G

Maintenant qu'il est cerné, il faut résoudre le problème ... pourquoi y a t'il "a verifier" dans une variable qui se veut numérique.

L'erreur vient d'ici

capture d ecran 693

Maintenant qu'il est cerné, il faut résoudre le problème ... pourquoi y a t'il "a verifier" dans une variable qui se veut numérique.

oui j avais bien compris l'erreur du coup, mais le fait que ça renvoi 'a verifier ' en colonne I c'est correcte, c'est bien le résultat attendu.

La ou il manque le résultat c'est en colonne J ou la maccro devrait renvoyer une date même si il y n'y a pas de valeur numérique en I

le fait que ça renvoi 'a verifier ' en colonne I c'est correcte, c'est bien le résultat attendu.

la maccro devrait renvoyer une date même si il y n'y a pas de valeur numérique en I

mais dans ta macro tu écris :

valeur_chercher = Cells(w, nbrcolonne3) - qte_a_commander5

ceci est impossible quand qte_a_commander5 prend la valeur a verifier !!!!!!!!!!!!

ceci est impossible quand qte_a_commander5 prend la valeur a verifier !!!!!!!!!!!!

D'accord il faut donc faire cela manuellement

Merci pour l'aide,

Cordialement

Non, mais il faut donner la règle et la mettre dans le code macro.

Comment fais-tu à la main ?

Comment fais-tu à la main ?

Bonjour,

désolé pour cette réponse tardive j'étais en vacance. Je ne sais pas comment ça calcule ces dates

mais en regardant la procédure je vois que quand l'ancien collègue utilisait la maccro il y avait des dates en colonne J même si il y avait "a vérifier" en colonne I

si le code ne marche pas si la valeur n'est pas numérique je pense qu'il le faisait a la main?

Rechercher des sujets similaires à "erreur type tcd"