[VBA] Qualificateur incorrecte

Résolu
Bonjour,

J'ai un tableau à double entrée TableauPaysDelaisCumul.
Dimension du tableau
TableauPaysDelaisCumul(i,.) = ListePaysCumul (Liste des pays)
TableauPaysDelaisCumul(.,j) = ListeDelaisCumul (Liste délais)

Tout fonctionne, mais à la ligne :
For i = 0 To UBound(ListeDelaisCumul)
    Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i, 3).Value = ListeDelaisCumul(i)
    Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i, 4).Value = TableauDelaisCumul(i) / (DerniereLigne - 1)
    Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i, 4).NumberFormat = "0.00%"
Next i

J'ai une erreur : "Qualificateur incorrecte", je n'ai aucune idée de ce que cela peut bien être et je n'ai pas l'aide microsoft pour cette erreur.
Une aide serait la bienvenue.

Cordialement JC

3 réponses

  1. Contributeur
    Comme ça c'est pas possible de faire un debug.
    Pour détecter l'erreur essaye...
    Sub TT()    
    On Error GoTo ERREUR    
    For i = 0 To UBound(ListePaysCumul)    
        Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i * UBound(ListeDelaisCumul), 10).Value = ListePaysCumul(i) 'Ecriture des pays    
        For j = 0 To UBound(ListeDelaisCumul)    
            Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i + i * (UBound(ListeDelaisCumul)) + j, 11).Value = ListeDelaisCumul(j)    
            Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i + i * (UBound(ListeDelaisCumul)) + j, 12).Value = TableauPaysDelaisCumul(i, j).DelaisCumul / (NbContratPaysCumul(i))    
            Workbooks(monfichier).Sheets("PARTIE 5").Cells(3 + i + i * (UBound(ListeDelaisCumul)) + j, 12).NumberFormat = "0.00%"    
        Next j    
    Next i    
    Exit Sub    
    ERREUR:    
    Debug.Print (3 + i + i * (UBound(ListeDelaisCumul)) + j)    
    Stop    
    End Sub

    Probable qu'il te manque des parenthèses ?
    essaye avec
    (3 + i +( i * (UBound(ListeDelaisCumul)) )+ j)
    Quand tu est sur stop tu peu vérifier toutes les données, soit en promenant la souris sur une variable (une bulle s'affiche avec sont contenu) mais ça va pas à tout les coups, alors tu peu voir la valeur dans la fenêtre Exécution en tapant..
    Print la variable dont tu veux connaître le contenu.
    Si ça va pas et que ton classeur ne contient pas de données confidentielles tu peu le poster sur Cjoint.com ou CiJoint.fr
    EDIT : je pense que j'ai trouver..
    TableauPaysDelaisCumul(i, j).DelaisCumul / (NbContratPaysCumul(i))
    Peut-être un + ou un moins à la place du point ???? OU
    Apparement ton tableau TableauPaysDelaisCumul() est un tableau de type et je ne pense pas qu'il est possible de mettre un tableau de type avec plusieurs arguments.
    Montre la déclaration du Type et du tableau, j'ai encore une autre idée.
    L'expérience instruit plus sûrement que le conseil. (André Gide)
    Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
    0
    1. Qu'est ce que je suis idiot, merci la solution était hyper simple, en fait j'avais modifié ce tableau, et en effet, j'avais modifié son type aussi, il n'y a plus de ".DelaisCumul".
      A croire que le 31 ne me réussit pas.

      Sur ce, merci et bonne année !

      Cordialement JC
      0