Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1368 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Erreur 1004: Méthode Open de l'objet workbook échouée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Erreur 1004: Méthode Open de l'objet workbook échouée

n°1905234
bmetias
Posté le 15-07-2009 à 11:22:07  profilanswer
 

Bonjour à tous,
 
Après de nombreuses recherches sur le net, je ne trouve toujours pas de solutions à mon problème de copie/Coller donc je m'en remet à vous!
 
Je cherche à exécuter les tâches suivantes à partir d'un fichier de consolidation "GlobalView":
 
1) Ouvrir 5 fichiers nommés  
2) Sélectionner 2 onglets nommés dans chacun de ces fichiers
3) Copier ces 2 onglets dans chacun de ces fichiers
4) Coller ces 2 onglets dans mon fichier "Global View"
 
 
Le programme fonctionne très bien avec les 2 premiers fichiers mais pas à partir du 3ème, ça me donne "Erreur 1004: Méthode Open  de l'objet workbook échouée". J'ai pensé que ca pouvait etre du au presse papier office alors j'ai appliqué 2 méthodes (voir programme ci-dessous) pour le vider mais le problème persiste.
 
Quelqu'un aurait-il une idée?
 
Merci d'avance!
 
voici le programme utilisé:
 

Code :
  1. l = 9
  2. Do While Not IsEmpty(Cells(l, 26)) ' number of sites or divisions
  3.        
  4. Windows("BTRT_sites selection_btna_jan.xls" ).Activate
  5. Worksheets(1).Select
  6. ' ## Vidage du presse papier Version 1##
  7. Dim oDataObject As DataObject
  8. Set oDataObject = New DataObject
  9. oDataObject.SetText ""
  10. oDataObject.PutInClipboard
  11. Set oDataObject = Nothing
  12. ' ## Vidage du presse papier Version 2##
  13.     Range("A1" ).Select
  14.     Selection.Copy
  15.     Application.CutCopyMode = False
  16.        
  17.     'Selectionne les sites à consolider
  18.     site = Cells(l, 26).Value
  19.    
  20.    'Demande de supression si le fichier existe
  21.   If FeuilleExiste(ThisWorkbook, "Input_" & site & "_" & Division) Then
  22.     Cells(5, 26).Value = site
  23.     Overwrite.NameTab.Caption = "Input_" & site & "_" & Division
  24.     Overwrite.Show
  25.   End If
  26.  
  27.    Workbooks.Open "C:\program files\BTRT\sites\2009\BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls"
  28.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Unprotect Password:=("BOSKPI" )
  29.  
  30.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Activate
  31.    Worksheets(1).Select
  32.    
  33.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Sheets("Input_" & site & "_" & Division).Copy After:=Workbooks("BTRT_sites selection_btna_jan.xls" ).Sheets(Worksheets.Count)
  34.    'Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Activate
  35.    'Worksheets(1).Select
  36.    
  37.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Sheets("Results_" & site & "_" & Division).Copy After:=Workbooks("BTRT_sites selection_btna_jan.xls" ).Sheets(Worksheets.Count)
  38.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Protect Password:=("BOSKPI" )
  39.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Saved = True
  40.    Workbooks("BTRT_" & site & "_" & Division & "_" & Cmonth & ".xls" ).Close
  41.    l = l + 1
  42.    Worksheets(1).Select
  43. Loop


Message édité par bmetias le 16-07-2009 à 10:13:07
mood
Publicité
Posté le 15-07-2009 à 11:22:07  profilanswer
 

n°1905691
bmetias
Posté le 16-07-2009 à 10:10:08  profilanswer
 

Rebonjour,
 
j'ai vraiment besoin d'avoir vos points de vue svp meme si ceux ne sont que des idées. Je suis vraiment bloqué à cause de cette erreur et ne peux plus avancer dans mon projet.
 
Merci d'avance!

n°1905723
GuiGui013
Posté le 16-07-2009 à 10:59:46  profilanswer
 

Tes fichiers Excel existent bien ?

n°1905726
bmetias
Posté le 16-07-2009 à 11:05:40  profilanswer
 

oui l"erreur est sur la ligne 29
 
sinon les noms de fichier sont corrects et les fichiers existent dans le repertoire indiqué.
 
Pour info, les onglets que je copie contiennent des macros elles aussi ce qui rend la copie volumineuse...
 

n°1905729
GuiGui013
Posté le 16-07-2009 à 11:10:21  profilanswer
 

A part une erreur dans le nom du fichier, je ne vois pas ce qui peut produire une erreur.
Tu as vérifié dans la fenêtre d'exécution ?


Message édité par GuiGui013 le 16-07-2009 à 11:10:56
n°1905732
bmetias
Posté le 16-07-2009 à 11:13:28  profilanswer
 

En fait, ce qui me fait croire que le problème ne vient pas de la, c'est que je fais le test avec le meme fichier que je copie colle - Efface - Copie Colle etc...
 
Ca fonctionne les 2 premières fois et la 3ème j'obtiens ce fameux message d'erreur... .

n°1905744
bmetias
Posté le 16-07-2009 à 11:31:59  profilanswer
 

Encore une remarque interressante:
 
Je fais le copie/colle - Efface - Copie/colle de mes onglets manuellement (ie sans passer par les macros), et c'est exactement la meme chose. Au bout de la 3ème opération, ca ne colle plus. Mais pas de message d'erreur cette fois-ci... .

n°1914244
bmetias
Posté le 12-08-2009 à 09:51:53  profilanswer
 

Problème toujours non résolu. Personne n'a une idée?... :-(

n°1914319
_xme_
Posté le 12-08-2009 à 11:51:05  profilanswer
 

Salut
Excuse moi mais je ne suis pas sur d'avoir bien compris ton script.
Je ne vois pas ou tu ouvres ton fichier et ou tu le fermes?
Car si c'est un problème de mémoire, est ce que tu fais  bien ceci:
ouvrir un fichier, copier/coller 1 onglet, réutiliser les variables copier/coler le deuxieme, nettoyer les variables, fermer le fichier
et ceci 5 fois?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Erreur 1004: Méthode Open de l'objet workbook échouée

 

Sujets relatifs
message d'erreur "can not access a member of class X"Probème : "workbook saveas" error excel version -- Object COM ?
[VBA Excel 2007] erreur Nombre d'arguments incorrects [RESOLU]erreur : Set RS = db.OpenRecordset("SITE", dbOpenTable)
[VBA] Erreur out of range sur scriptErreur 1004 : La methode 'Cells' de l'objet '_Global' a échoué
Web Service Axis, inversion paramètres methode 
Plus de sujets relatifs à : Erreur 1004: Méthode Open de l'objet workbook échouée


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR