maxime.dlv
XLDnaute Nouveau
Hello tout le monde !
Première fois que j'écris sur un forum pour demander à l'aide, mais en tout cas celui-ci m'a bien servi !
Je n'arrive néanmoins pas à m'en sortir avec ma macro.
J'ai créé une macro qui me permet d'enregistrer automatiquement mon fichier excel à partir d'une concatenation de cellules, le problème est que dans ma formule, le fichier s'enregistre automatiquement dans le dossier où j'ai ouvert mon fichier Excel alors que je souhaite "Parcourir" mes dossiers pour l'enregistrer où je souhaite.
La macro ne marche pas et l'erreur que j'ai est "end if sans if". J'ai essayé d'en enlever mais cela ne fonctionne pas...
Voici ma formule :
Sub EnregistrerFichierXLSM()
Dim Nom As String
Nom = Range("A1") & ".xlsm"
If ThisWorkbook.Path = "" Then 'si le document n'a jamais été enregistré
SendKeys Nom
Application.Dialogs(xlDialogSaveAs).Show 'boîte de dialogue Enregistrer sous
Else
If Range("A1") = "" Then MsgBox "Entrez le nom du fichier en A1", 48: Range("A1").Select: Exit Sub
If MsgBox("Voulez-vous enregistrer le fichier sous le nom " & Nom & " ?", 4) = 6 Then
On Error Resume Next
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = -1 Then ' Clic sur Ok
Chemin = .SelectedItems(1)
Else
' Clic sur Annuler
Exit Sub
End If
End If
End If
End Sub
Si vous avez une solution cela me ferait gagner énormément de temps !!!
Je vous remercie, à bientôt !
Première fois que j'écris sur un forum pour demander à l'aide, mais en tout cas celui-ci m'a bien servi !
Je n'arrive néanmoins pas à m'en sortir avec ma macro.
J'ai créé une macro qui me permet d'enregistrer automatiquement mon fichier excel à partir d'une concatenation de cellules, le problème est que dans ma formule, le fichier s'enregistre automatiquement dans le dossier où j'ai ouvert mon fichier Excel alors que je souhaite "Parcourir" mes dossiers pour l'enregistrer où je souhaite.
La macro ne marche pas et l'erreur que j'ai est "end if sans if". J'ai essayé d'en enlever mais cela ne fonctionne pas...
Voici ma formule :
Sub EnregistrerFichierXLSM()
Dim Nom As String
Nom = Range("A1") & ".xlsm"
If ThisWorkbook.Path = "" Then 'si le document n'a jamais été enregistré
SendKeys Nom
Application.Dialogs(xlDialogSaveAs).Show 'boîte de dialogue Enregistrer sous
Else
If Range("A1") = "" Then MsgBox "Entrez le nom du fichier en A1", 48: Range("A1").Select: Exit Sub
If MsgBox("Voulez-vous enregistrer le fichier sous le nom " & Nom & " ?", 4) = 6 Then
On Error Resume Next
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = -1 Then ' Clic sur Ok
Chemin = .SelectedItems(1)
Else
' Clic sur Annuler
Exit Sub
End If
End If
End If
End Sub
Si vous avez une solution cela me ferait gagner énormément de temps !!!
Je vous remercie, à bientôt !