Erreur'5': Argument ou appel de procédure incorrect

Bonjour à tous,

Je vous en prie aidez moi!!

Voici mon problème: Je cherche à executer une macro sur plusieurs fichiers(.xlsm). Je m'explique, chaques projet qui est en cours de réalisation a un fichier projet.C'est le même fichier pour tous les projets. tous ces fichiers sont stockés dans un même répertoire et ont la même macro pour pouvoir aller extraire des données sur une extraction SAP. Cette macro marche très bien.

Cependant je cherche maintenant à réaliser un fichier principale qui comporte une macro capable d'aller chercher le dossier où sont stockés mes fichiers projets et appliquer cette macro sur tous mes fichiers les uns aprés les autres;

j'ai pensé à:

Sub ACTIVATION_MACRO()

Chemin = "C:\Users\9589573\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\" 'Avec \ à la fin

Fichier = Dir(Chemin & "*.xlsx")

Do While Len(Fichier) > 0

MsgBox Fichier

'Fichier = Fichier

Workbooks.Open Filename:="C:\Users\9589573\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\" + Fichier

PROJET = Left(ActiveWorkbook.Name, 6)

EXTRACTION_SAP

ActiveWindow.Close

Fichier = Dir() 'On passe au fichier suivant

Loop

End Sub

LE PROBLEME c'est que j'arrive bien à ouvrir le fichier et à extraire les données que je souhaite et lorsque le programme fini sa procédure "EXTRACTION_SAP" il ferme bien le fichier actif mais ne veut pas passer au suivant!!!!!

Il me met Erreur'5': Argument ou appel de procédure incorrect

Quelqu'un peut il m'apporter de l'aide svp

je commence à désespérer

Bonjour

Après un rapide test ( bien sur sans la macro EXTRACTION_SAP) l'ouverture des différents fichiers ne pose aucun problème

Fais le test aussi en plaçant une remarque de l'appel à la macro EXTRACTION_SAP

Merci banzai de m'avoir rpdu cependant je ne vois pas ce que tu veux dire par une remarque de l'appel de EXTRACTION SAP??

Bonjour

Modifies ta macro en mettant une remarque devant l'appel à la macro "EXTRACTION_SAP"

Le résultat : La macro "EXTRACTION_SAP" n'est pas exécutée

Recopies ce code

Sub ACTIVATION_MACRO()

Chemin = "C:\Users\9589573\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\" 'Avec \ à la fin

Fichier = Dir(Chemin & "*.xlsx")

Do While Len(Fichier) > 0

MsgBox Fichier
'Fichier = Fichier
Workbooks.Open Filename:="C:\Users\9589573\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\" + Fichier
PROJET = Left(ActiveWorkbook.Name, 6)

'EXTRACTION_SAP

ActiveWindow.Close
Fichier = Dir() 'On passe au fichier suivant
Loop

End Sub

C'est un code semblable à celui-ci (avec d'autres chemin) que j'ai testé et qui à bien ouvert et fermé tous les fichiers

re banzai,

oui oui lorsque je met EXTRACTION_SAP en commentaire, je vois bien mes fichiers défilés. Le probléme c'est vraiment lorsque je veux faire mon extraction...

Bonjour

Donc pour en revenir à ton problème c'est dans ta macro "EXTRACTION_SAP" qu'il faut chercher la cause

Pour t'apporter un maximum d'aide il faut ton fichier principal avec les macros ainsi que 2 fichiers dans lesquels tu fais ""EXTRACTION_SAP"

c'est le seul fichier (fichier principal) que je peux te transmettre.

Bonjour

Sans pouvoir tester

Essayes

Private Sub BoucleDeTraitement() ' la boucle de traitement des fichiers
Dim Wb As Workbook

  Application.ScreenUpdating = False
  ChDir Chemin
  Fich = Dir(Chemin & "*.xlsx")
  Do While Fich <> ""
    Set Wb = Workbooks.Open(Chemin & Fich)
    EXTRACTION_SAP
    EXTRACTION_DATAS_ENGAGE
    'ActiveWorkbook.Close True
    Wb.Close True
    'On Error Resume Next
    Fich = Dir
  Loop
  Application.ScreenUpdating = True
End Sub

Je te remercie bcp pour ton aide ,c'est bon j'ai trouvé!!

Le problème consisté au fait d'utiliser deux fois la fonction Dir. J'ai du passer par un tableau pour stocker tous mes fichiers. De plus j'ai du faire avant une boucle pour savoir le nombre de fichiers dans le dossier. Pour finir je me sers de cette variable i pour dimensionner mon tableau.

Sub ACTIVATION_MACRO()

Dim Montab As Variant

Dim i As Variant

Chemin = "C:\Users\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\" 'Avec \ à la fin

Fichier = Dir("C:\Users\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\*.xlsx*")

i = -1

Do While Fichier <> "" 'boucle permettant de savoir le nombre de fichiers

i = i + 1

Fichier = Dir

Loop

ReDim Montab(i) ' Dimensionnement du tableau

Fichier = Dir("C:\Users\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\*.xlsx*") 'Etant donné que j'ai déja une fonction Dir dans mon programme je dois mettre les valeurs dans un tabeau

i = 0

Do While Fichier <> ""

Montab(i) = Fichier

Fichier = Dir

i = i + 1

Loop

For i = 0 To UBound(Montab)

Fichier = Montab(i)

MsgBox Fichier

Workbooks.Open Filename:="C:\Users\Documents\Projet SUIVI DES COUTS\fichiers_PROJETS\" + Fichier

PROJET = Left(ActiveWorkbook.Name, 6)

EXTRACTION_SAP

ActiveWindow.Close

Next i

End Sub

Merci bcp quand mm BANZAI!!!

Rechercher des sujets similaires à "erreur argument appel procedure incorrect"