ERREUR 5 : Argument/Appel de procédure incorrect [Résolu]

Messages postés
27
Date d'inscription
jeudi 5 mai 2011
Dernière intervention
18 mai 2011
- - Dernière réponse : heleneML
Messages postés
27
Date d'inscription
jeudi 5 mai 2011
Dernière intervention
18 mai 2011
- 9 mai 2011 à 14:12
Bonjour,
Quand je lance le code suivant, un message d'erreur au niveau du Loop While Error apparait: "argument ou appel de procédure incorrect"
Je ne comprends pas d'où peut venir l'erreur car j'ai utilisé quasiment le même code dans une autre macro, et cela sans problème.

Voici le code :
Dim wb As Workbook
Dim ws As Worksheet
    
Do           'OUverture jusqu'à plus d'erreurs
Application.DisplayAlerts=False                               'N'affiche pas de message d'erreur dans le cas où le fichier n'existe pas

mois = mois -1            
      'On décrémente le num du   mois (1er passage => fichier inexistant, passages suivants => mois précédent

If mois= 0 then 
    'Cas du passage à l'année précédente
            mois = 12
            annee = annee - 1
End If
        
date_fichier = CStr(mois) + "-" + annee
chemin_fichier = calcul_chemin(chemin_fichier1, chemin_fichier2, annee, date_fichier)
        
Dim nom_feuille As Variant
nom_feuille = "Q.S International " + Left(MonthName(mois), 3) + ". CTAR"             
       'le nom de la feuille varie selon la date
        
Set wb Workbooks.Open(chemin_fichier, UpdateLinks 3, ReadOnly = True)       'Tentative d'ouverture
        
Set ws = wb.Worksheets(nom_feuille)

Loop While Error
=> erreur 5

J'ai essayé en changeant par Loop until not error, et j'obtiens alors l'erreur d'exécution numéro 13 (Incompatibilité de type).

Je ne comprends pas d'où peut venir l'erreur.
Merci de votre aide. (Si besoin de détails supplémentaires, il n'y a pas de problème)

Hélène
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
423
Date d'inscription
vendredi 17 novembre 2006
Dernière intervention
15 juillet 2014
3
Merci
Bonjour,

Et avec cette méthode ?
On Error Resume Next
Do
    'Initialisation de l'erreur
    Err.Clear

    'Votre code

'Si err.Number est à 0 c'est qu'aucune erreur ne c'est produite
Loop While (Err.Number <> 0)

Merci foliv57 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de foliv57
Messages postés
27
Date d'inscription
jeudi 5 mai 2011
Dernière intervention
18 mai 2011
0
Merci
Merci foliv57 !
Cette méthode a l'air de fonctionner !
Commenter la réponse de heleneML

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.