Posez votre question Signaler

VB : Erreur 424 Object Requis [Résolu]

boti59 21Messages postés 26 mars 2008Date d'inscription - Dernière réponse le 17 juil. 2008 à 17:48
Bonjour,
J'ai un probème lors de l'ouverture d'un classeur, Excel m'indique cette erreur :
Erreur 424 : Object Requis
J'ai beau retourner le programme dans tous les sens, je ne comprends pourquoi il ne veut pas ouvrir le classeur.
Voici le code
'------- MAJ THD V4 -----------------------------------------------------------
'Regoupement de tous les fichiers de résultats en un seul
If l > 1 Then
Workbook.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & ".XLS"
For m = 1 To l
'Regroupement
Workbook.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & m & ".XLS" 'ligne de l'erreur
Sheets.Copy Before:=Workbooks(NomFic & ".XLS").Sheets(1)
Windows(NomFic & m & ".XLS").Activate
ActiveWorkbook.Close
Next m
End If
'---------------------------------------------------------------------------------
Pourriez-vous m'aidez ?
Cordialement.
Thibaut
Pourquoi faire simple quand on peut faire compliquer ?
Lire la suite 

VB : Erreur 424 Object Requis »

9 réponses
Réponse
+0
moins plus
La ligne de l'erreur n'était pas la bonne :

'------- MAJ THD V4 -----------------------------------------------------------
'Regoupement de tous les fichiers de résultats en un seul
If l > 1 Then
Workbook.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & ".XLS" 'ligne de l'erreur
For m = 1 To l
'Regroupement
Workbook.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & m & ".XLS"
Sheets.Copy Before:=Workbooks(NomFic & ".XLS").Sheets(1)
Windows(NomFic & m & ".XLS").Activate
ActiveWorkbook.Close
Next m
End If
'-----------------------------------------------------------­----------------------
Ajouter un commentaire
Réponse
-1
moins plus
C'est le 1er classeur ou les suivants qui bugg ?
EDIT:
J'ai poster après ton dernier message, c'est où que ca bugg ?
boti59- 17 juil. 2008 à 17:28
Il s'agit du premier classeur, tu l'avais compris bien que j'ai mal indiqué la ligne d'erreur.

cdt
Ajouter un commentaire
Réponse
-1
moins plus
Je pense à une chose, le classeur qui contient la macro... il s'appel COMMENT ?
boti59- 17 juil. 2008 à 17:47
Désolé j'ai mal posté ma réponse, elle est tombé plus haut tu ne la sans doute pas vu :

Finalement, j'ai trouvé l'erreur, il s'agissait juste d'ajouter Application. devant Workbook.open, je ne sais pas pourquoi, mais à présent cela fonctionne :

'------- MAJ THD V4 -----------------------------------------------------------
'Regoupement de tous les fichiers de résultats en un seul
If l > 1 Then
MsgBox (chemin_resultat & prefixe_resultat & dossier.Name & ".XLS")
Application.Workbooks.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & ".XLS"
For m = 1 To l
'Regroupement
Application.Workbooks.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & m & ".XLS"
Sheets.Copy Before:=Workbooks(prefixe_resultat & dossier.Name & ".XLS").Sheets(1)
Windows(prefixe_resultat & dossier.Name & m & ".XLS").Activate
ActiveWorkbook.Close
Next m
End If
'-----------------------------------------------------------­--------------------

Merci tout de même lermite222 !
Ajouter un commentaire
Réponse
-2
moins plus
bonjour,
tu modifie..
If l > 1 Then
Workbook.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & ".XLS"
par
dim Fich as string
fich = chemin_resultat & prefixe_resultat & dossier.Name & ".XLS"
stop

la macro va s'arrèter sur le stop
tu tape ensuite dans la fenêtre exécution
Print Fich
et voit ce que cela donne, c'est sûrement pas la bonne adresse
A+
boti59- 17 juil. 2008 à 17:16
Merci lermite222,

j'ai déjà essayé de voir si il s'agissait d'une erreur dans le chemin en reproupant dans une seule variable et en l'imprimant dans un msgbox, le chemin est tout à fait le bon !

Cordialement.
boti59- 17 juil. 2008 à 17:38
Finalement, j'ai trouvé l'erreur, il s'agissait juste d'ajouter Application. devant Workbook.open, je ne sais pas pourquoi, mais à présent cela fonctionne :

'------- MAJ THD V4 -----------------------------------------------------------
'Regoupement de tous les fichiers de résultats en un seul
If l > 1 Then
MsgBox (chemin_resultat & prefixe_resultat & dossier.Name & ".XLS")
Application.Workbooks.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & ".XLS"
For m = 1 To l
'Regroupement
Application.Workbooks.Open Filename:=chemin_resultat & prefixe_resultat & dossier.Name & m & ".XLS"
Sheets.Copy Before:=Workbooks(prefixe_resultat & dossier.Name & ".XLS").Sheets(1)
Windows(prefixe_resultat & dossier.Name & m & ".XLS").Activate
ActiveWorkbook.Close
Next m
End If
'-------------------------------------------------------------------------------

Merci tout de même lermite222 !
lermite222- 17 juil. 2008 à 17:48
J'emploi pourtant cette fonction depuis des années mais je met pas Filename:=
je fais Fich = chemin_resultat & prefixe_resultat & dossier.Name & ".XLS"
Workbooks.Open Fich
et j'ai jamais eu de problème.
Enfin, puisque ca marche...
A+
Ajouter un commentaire
Ce document intitulé « VB : Erreur 424 Object Requis » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?