excel plante quand VBA demande d'ouvrir une boite de dialogue "enregistrer sous"

CYNO68

XLDnaute Nouveau
Bonjour
j'ai fais une macro qui marchait mais qui se met à planter depuis peu et je n'arrive pas a déterminer la cause
en fait cette macro généré un fichier EXCEL, j'exporte la feuille vers un nouveau classeur et je lance une boite de dialogue "enregistrer sous"
jusque là tout fonctionnait et depuis peu la EXCEL plante au moment ou la boite de dialogue doit s'ouvrir
concrètement j'ai mon fichier de base, mon nouveau classeur avec la feuille collée dedans mais la boite ne s'ouvre pas et je ne peut plus rien faire (même CTRL+PAUSE ne fait rien), le débogeur ne se déclanche même pas
je suis obligé d'utiliser le gestionnaire des taches pour sortir de la situation

voici mon code avec en rouge la ligne ou la macro s’arrête
Est ce quelqu'un peut m'éclairer ?
PS: j'ai OFFICE 2016
merci

Sub CREATION_MATRICE_CENTRALES()

Dim nom As String

Call FILTRER_ACTIFS_NOUVEAUX.FILTRER_ACTIFS_NOUVEAUX

Sheets("DOCUMENT CENTRALES").Visible = True
Sheets("MATRICE DE BASE CENTRALES").Visible = True
Sheets("MATRICE DE BASE CENTRALES").Select
Range("A4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("DOCUMENT CENTRALES").Select
Range("A4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("C14").Select
Sheets("DOCUMENT CENTRALES").Select
Application.CutCopyMode = False
Sheets("DOCUMENT CENTRALES").Copy
Range("A4").Select

ChDir _
"D:\Dropbox (CYNNOTEK)\PARTAGE CYNNOTEK\PARTAGE MARKETING\MATRICE DE BASE\new matrice 2018\"

Application.Dialogs(xlDialogSaveAs).Show

' pour déterminer le nom du fichier
'nom = "BASE MATRICE CENTRALES AU " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " .xlsx"
'ActiveWorkbook.SaveAs (nom)
ActiveWorkbook.Close



Sheets("DOCUMENT CENTRALES").Select
Range("A4").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Range("C9").Select
Sheets("DOCUMENT CENTRALES").Visible = False
Sheets("MATRICE DE BASE CENTRALES").Visible = False

'Sheets("DOCUMENT CENTRALES").Select
'ActiveWindow.SelectedSheets.Visible = False
MsgBox "MATRICE CENTRALES CREE AVEC SUCCES !!!"
End Sub
 

MatiChoux

XLDnaute Occasionnel
Hello CYNO68.

Personnellement je ne suis pas très fan des "sélections" et donc de la méthode "Select". Elle est même dépréciée en règle générale car source de pas mal de problèmes. Surtout que la plupart du temps on peut s'en passer. C'est un autre débat mais puisque ton problème semble lié à des "Select".

Sinon tu affirmes que ton code fonctionnait avant mais plus depuis quelques temps : tu as modifié des lignes de ton programme récemment ? Si oui, lesquelles ? La macro plante. OK. Mais tu n'as vraiment aucun message d'erreur ? :confused:

De ce que je vois, tu manipules plusieurs feuilles et tu fais des "Select" sur des cellules sans préciser la feuille sur laquelle tu le fais ; potentiellement gênant voire bloquant.

A bientôt,
 

CYNO68

XLDnaute Nouveau
Bonjour

en fait j'ai rien modifié
j'ai remarque que si je coupe et recolle la ligne Application.Dialogs(xlDialogSaveAs).Show cela remarche 1 fois et si je relance la macro cela bloque de nouveau
 

CYNO68

XLDnaute Nouveau
et je n'ai aucun message d'erreur, c'est comme si mon PC était incapable de passer à l'affichage de la boite de dialogue, la seule solution est d’arrêter EXCEL via le gestionnaire des taches
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas