Erreur 1004 "Classeur utilisé en référence..."
chafik.b
Messages postés
1
Statut
Membre
-
ThauTheme Messages postés 1564 Statut Membre -
ThauTheme Messages postés 1564 Statut Membre -
Bonjour,
J'étais sous excel 2010 et toutes mes macro fonctionnaient parfaitement. là je viens de passer sous 2013, et je pense avoir quelques problèmes de compatibilité surtout quand il s'agit de naviguer entre plusieurs fichiers excel !
dans ce code j'ai deux problèmes :
1) J'ai dû rajouter la commande ".activate" pour chaque classeur, mais ca me debog à chaque fois avant de passer avec F8, est ce qu'il y a une sollution pour que ca passe directement ?
2) le code bloque à la dernière ligne "WB.close" et me donne l'erreur "1004 : ce classeur est utilisé en référence par une autre classeur ...." , je dois donc le fermer manuellement avant de continuer le code.
Auriez vous une solution pour ces deux problèmes svp ? Merci
J'étais sous excel 2010 et toutes mes macro fonctionnaient parfaitement. là je viens de passer sous 2013, et je pense avoir quelques problèmes de compatibilité surtout quand il s'agit de naviguer entre plusieurs fichiers excel !
dans ce code j'ai deux problèmes :
1) J'ai dû rajouter la commande ".activate" pour chaque classeur, mais ca me debog à chaque fois avant de passer avec F8, est ce qu'il y a une sollution pour que ca passe directement ?
2) le code bloque à la dernière ligne "WB.close" et me donne l'erreur "1004 : ce classeur est utilisé en référence par une autre classeur ...." , je dois donc le fermer manuellement avant de continuer le code.
Auriez vous une solution pour ces deux problèmes svp ? Merci
Sub Histo_Actualiser()
Dim MyWB As Workbook, WB As Workbook
Set MyWB = ActiveWorkbook
MyWB.Sheets("histo Valo").Select
Cells.ClearContents
Set WB = Workbooks.Open(Histo_Fichier, False)
WB.Activate
Sheets("Histo Valo").Select
Sheets("Histo Valo").Cells.Select
Selection.Copy
MyWB.Activate
Sheets("histo valo").Select
Sheets("histo valo").Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
WB.Close False
End Sub
A voir également:
- Erreur 1004 "Classeur utilisé en référence..."
- Salut j'utilise whatsapp - Accueil - Messagerie instantanée
- Qui utilise mon wifi - Guide
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Nom de périphérique local déjà utilisé ✓ - Forum Réseau
1 réponse
Bonjour Chafik, bonjour le forum,
À mon avis ton classeur WB n'était pas ouvert (à cause des guillemets) d'où le planton à la fermeture... Sinon, évite autant que tu le peux les Select qui ne font que ralentir l'exécution du code. Ton code sans eux :
À mon avis ton classeur WB n'était pas ouvert (à cause des guillemets) d'où le planton à la fermeture... Sinon, évite autant que tu le peux les Select qui ne font que ralentir l'exécution du code. Ton code sans eux :
Sub Histo_Actualiser()
Dim MyWB As Workbook, WB As Workbook
Set MyWB = ActiveWorkbook
MyWB.Sheets("histo Valo").Cells.ClearContents
Set WB = Workbooks.Open("Histo_Fichier.xlsx", False) 'extension a adapter à ton cas
WB.Sheets("Histo Valo").Cells.Copy
MyWB.Sheets("histo valo").Range("A1").PasteSpecial(Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False)
Application.CutCopyMode = False
WB.Close False
End Sub