benoua
XLDnaute Occasionnel
Bonjour à tous!
Voilà j'ai développé une macro complémentaire pour mon service (avec l'aide de beaucoup d'entre vous que je remercie encore une fois!), celle-ci tourne au poil sauf un poste qui me pose problème! J'vais essayer d'être clair...
Voilà en gros mon code (j'ai supprimé 2-3 trucs sans importance) :
Cette macro marche sur 9 des 10 postes du service mais sur un poste celle-ci foire à partir de la ligne en gras! Et du coup il me renvoie le message d'erreur de la fin. Mais il fait bien le copier/coller juste avant et referme le classeur "Carnet de Commandes.xls".
Comme on peut le voir dans le code Filename est une variable qui prend la valeur du Range("Save_Name").
Save_Name est une cellule qui concatène 3 champs remplis par l'utilisateur. Ainsi les fichiers sont tous nommés selon un même format.
Du coup il est censé une fois avoir fermé le classeur "Carnet de commande" rebasculé sur le classeur créé précédemment. Mais la sans raison il agit comme si aucun classeur portant le nom dans Save_Name n'existait.
J'ai remarqué ceci sur ce poste et uniquement sur ce poste :
Avant l'enregistrement via la macro :
Après l'enregistrement :
"Bases" est le nom de l'onglet sur lequel se trouve le Range("Save_Name"), mais pourquoi fait il son apparition après l'enregistrement? D'autant plus qu'il ne le fait pas sur les autres postes...
A noter que tout le monde a la même version d'Excel!
Une idée?
Merci d'avance
Voilà j'ai développé une macro complémentaire pour mon service (avec l'aide de beaucoup d'entre vous que je remercie encore une fois!), celle-ci tourne au poil sauf un poste qui me pose problème! J'vais essayer d'être clair...
Voilà en gros mon code (j'ai supprimé 2-3 trucs sans importance) :
Code:
Sub erz()
Dim Filename As String
On Error GoTo Erreur
Filename = Range("Save_Name").Value
ChDir (Chemin + "Affaires\")
ActiveWorkbook.SaveAs (Filename), FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
Range("EXPORT_CARNET").Copy
If ClasseurOuvert("Carnet de commandes.xls") Then
Workbooks("Carnet de commandes.xls").Activate
Else
Workbooks.Open (Chemin + "Carnet de Commandes\Carnet de commandes.xls")
End If
Range("A500").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWorkbook.Save
ActiveWorkbook.Close
[U]
[B] Workbooks(Filename).Activate[/B][/U]
End If
End If
Sheets("Menu").Select
MsgBox ("Sauvegarde terminée")
End If
End If
Else
Erreur:
MsgBox ("La sauvegarde a été annulée ou ne s'est pas correctement exécutée")
Cette macro marche sur 9 des 10 postes du service mais sur un poste celle-ci foire à partir de la ligne en gras! Et du coup il me renvoie le message d'erreur de la fin. Mais il fait bien le copier/coller juste avant et referme le classeur "Carnet de Commandes.xls".
Comme on peut le voir dans le code Filename est une variable qui prend la valeur du Range("Save_Name").
Save_Name est une cellule qui concatène 3 champs remplis par l'utilisateur. Ainsi les fichiers sont tous nommés selon un même format.
Du coup il est censé une fois avoir fermé le classeur "Carnet de commande" rebasculé sur le classeur créé précédemment. Mais la sans raison il agit comme si aucun classeur portant le nom dans Save_Name n'existait.
J'ai remarqué ceci sur ce poste et uniquement sur ce poste :
Avant l'enregistrement via la macro :
Après l'enregistrement :
"Bases" est le nom de l'onglet sur lequel se trouve le Range("Save_Name"), mais pourquoi fait il son apparition après l'enregistrement? D'autant plus qu'il ne le fait pas sur les autres postes...
A noter que tout le monde a la même version d'Excel!
Une idée?
Merci d'avance