Bonjour Le forum,
Premièrement je vous remercie tous car depuis le début de mon stage où je dois faire principalement des macros sous excel, vous m'avez déjà été d'un énorme secours.
Si aujourd'hui je vous pose une question directement, c'est que je n'ai pas trouvé (mais je n'ai peut-être pas assez bien cherché) de réponse à ma question qui suit :
J'ai une macro qui me permet de récupérer différentes informations d'un fichier à un autre, et qui ensuite enregistre-sous le fichier où sont apparu les informations.
voici la macro d'enregistrement :
Pouvais vous m'aider s'il vous plait ?
Pour le moment toute ma macro fonctionne normalement, comme si c'était la première fois que le nom du fichier apparaissait, et l'enregistre par dessus le fichier précédent sans même m'en avertir...
Merci Beaucoup.
Premièrement je vous remercie tous car depuis le début de mon stage où je dois faire principalement des macros sous excel, vous m'avez déjà été d'un énorme secours.
Si aujourd'hui je vous pose une question directement, c'est que je n'ai pas trouvé (mais je n'ai peut-être pas assez bien cherché) de réponse à ma question qui suit :
J'ai une macro qui me permet de récupérer différentes informations d'un fichier à un autre, et qui ensuite enregistre-sous le fichier où sont apparu les informations.
voici la macro d'enregistrement :
VB:
'''''''''''''''''''''''''''''Enregistrement du fichier''''''''''''''''''''''''''''''
'ecriture du chemin d'accés: celui-ci est dissimulé en case A1 du fichier
Dim NomFichier As String, Chemin As String, Chemin2 As String
Chemin = CStr(ThisWorkbook.ActiveSheet.Range("A1").Value)
'vérification qu'il n'y a pas de renvoie à la ligne dans le nom de l'Article qui me sert ensuite de nom du fichier, pour éviter un bug d'enregistrement
Dim MonCaracAChercher As String
MonCaracAChercher = Chr(10)
If InStr(1, Article, MonCaracAChercher, vbTextCompare) = 0 Then
' attention si le nom du fichier est déjà utilisé (mais ça marche pas)
If Dir(ThisWorkbook.Path & "\" & Article, vbDirectory) = "" Then
'enregistrement
Application.DisplayAlerts = False
NomFichier = Format(Article)
ActiveWorkbook.SaveAs (Chemin & NomFichier)
Application.DisplayAlerts = True
' message d'érreur si le nom est déjà pris (mais ça marche pas)
Else
MsgBox ("Impossible d'enregistrer automatiquement car ce nom est déjà utilisé" & Chr(10) & "Veuillez enregistrer-sous, manuellement")
End If
'message d'erreur s'il y a un renvoie à la ligne dans le nom du ficher
Else
MsgBox ("Impossible d'enregistrer automatiquement" & Chr(10) & "Veuillez enregistrer-sous, manuellement")
End If
Pouvais vous m'aider s'il vous plait ?
Pour le moment toute ma macro fonctionne normalement, comme si c'était la première fois que le nom du fichier apparaissait, et l'enregistre par dessus le fichier précédent sans même m'en avertir...
Merci Beaucoup.
Dernière édition: