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

Erreur 1004: Méthode Open de l'objet workbook échouée - VB/VBA/VBS - Programmation

Marsh Posté le 15-07-2009 à 11:22:07    

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
Reply

Marsh Posté le 15-07-2009 à 11:22:07   

Reply

Marsh Posté le 16-07-2009 à 10:10:08    

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!

Reply

Marsh Posté le 16-07-2009 à 10:59:46    

Tes fichiers Excel existent bien ?

Reply

Marsh Posté le 16-07-2009 à 11:05:40    

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...
 

Reply

Marsh Posté le 16-07-2009 à 11:10:21    

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
Reply

Marsh Posté le 16-07-2009 à 11:13:28    

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... .

Reply

Marsh Posté le 16-07-2009 à 11:31:59    

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... .

Reply

Marsh Posté le 12-08-2009 à 09:51:53    

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

Reply

Marsh Posté le 12-08-2009 à 11:51:05    

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?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed