Enregistrement auto VBA

Bonjour,

j'ai un fichier avec un code vba qui fonctionne trés bien pour enregistrement auto, voici le code:

Sub EnregistrerSous()

Dim Chemin As String, Mois As String, Année As String, Fichier As String

If Not ActiveSheet.Name = "CR Facture" Then Exit Sub

Mois = Replace(Replace(Replace(Format(Range("C24").Value, "mmmm"), "é", "e"), "è", "e"), "û", "u")

Année = Year(Range("C24").Value)

'chemin

Chemin = "C:\Users\christophe\Google Drive\promedep drive\Nouvelle gestion\feuille d'inter avant 01042015\Facture "

Chemin = Chemin & Mois & " " & Année & "\Fac " & Mois & " " & Année & "\"

'fichier

Fichier = ActiveWorkbook.Name

Fichier = Range("B24").Value & "_" & Fichier

ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

J'ai donner ce fichier a un amis pour utilisation et j'ai voulu lui adapter l'enregistrement et j'ai donc changé juste le chemin d'accès mais cela ne fonctionne pas.... et voici ce que cela donne:

Sub EnregistrerSous()

Dim Chemin As String, Mois As String, Année As String, Fichier As String

If Not ActiveSheet.Name = "CR Facture" Then Exit Sub

Mois = Replace(Replace(Replace(Format(Range("C24").Value, "mmmm"), "é", "e"), "è", "e"), "û", "u")

Année = Year(Range("C24").Value)

'chemin

Chemin = "C:\Users\CHRISTOPHE\Desktop\seb "

Chemin = Chemin & Mois & " " & Année & "\Fac " & Mois & " " & Année & "\"

'fichier

Fichier = ActiveWorkbook.Name

Fichier = Range("B24").Value & "_" & Fichier

ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

pour info: pour l'instant tout est encore en test sur mon pc, je changerai le début du chemin une fois sur son pc.

Quelqu'un a t'il la solution?

Merci d'avance pour votre aide

Bjr

Ceci existe-t-il bien ?

"C:\Users\CHRISTOPHE\Desktop\seb "

y compris avec un espace derrière seb ??

Bonjour et merci de ta réponse.

j'ai corrigé au cas ou mais sans succés...

Sub EnregistrerSous()

Dim Chemin As String, Mois As String, Année As String, Fichier As String

If Not ActiveSheet.Name = "CR Facture" Then Exit Sub

Mois = Replace(Replace(Replace(Format(Range("C24").Value, "mmmm"), "é", "e"), "è", "e"), "û", "u")

Année = Year(Range("C24").Value)

'chemin

Chemin = "C:\Users\CHRISTOPHE\Desktop\seb"

Chemin = Chemin & Mois & " " & Année & "\Fac " & Mois & " " & Année & "\"

'fichier

Fichier = ActiveWorkbook.Name

Fichier = Range("B24").Value & "_" & Fichier

ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

et oui c'est bien le chemin vers le dossier de destination...

Par contre je sais pas si ca a un quelconque liens mais dans mon fichier d'origine(celle qui fonctionne) quand j'active la macro elle m'ouvre un autre fichier et je ne sais pas pourquoi..

Merci encore

Dans ce cas, sans fichier et autres macros, impossible de diagnostiquer.

Il te faut la macro concerné dans le fichier qui s'ouvre tout seul?

Si oui la voici:

Sub EnregistrerSous()

Dim Chemin As String, Mois As String, Année As String, Fichier As String

If Not ActiveSheet.Name = "CR Facture" Then Exit Sub

Mois = Replace(Replace(Replace(Format(Range("C24").Value, "mmmm"), "é", "e"), "è", "e"), "û", "u")

Année = Year(Range("C24").Value)

Chemin = "C:\Users\christophe\Google Drive\promedep drive\Nouvelle gestion\feuille d'inter avant 01042015\Facture "

Chemin = Chemin & Mois & " " & Année & "\Fac " & Mois & " " & Année & "\"

Fichier = ActiveWorkbook.Name

Fichier = Range("B24").Value & "_" & Fichier

ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

Désolé cette partie est un peu floue pour moi.. (le faite qu'un autre fichier s'ouvre tout seul à l'activation de la macro)

Cette macro n'ouvre pas un fichier !

NOTA : utilise la balise </> pour les sources

Tout va mieux... juste une macro mal placé...

Donc pour reprendre j'ai une macro placé dans un fichier qui fonctionne très bien:

Sub EnregistrerSous()

Dim Chemin As String, Mois As String, Année As String, Fichier As String

If Not ActiveSheet.Name = "CR Facture" Then Exit Sub

Mois = Replace(Replace(Replace(Format(Range("C24").Value, "mmmm"), "é", "e"), "è", "e"), "û", "u")

Année = Year(Range("C24").Value)

'chemin

Chemin = "C:\Users\christophe\Google Drive\promedep drive\Nouvelle gestion\feuille d'inter avant 01042015\Facture "

Chemin = Chemin & Mois & " " & Année & "\Fac " & Mois & " " & Année & "\"

'fichier

Fichier = ActiveWorkbook.Name

Fichier = Range("B24").Value & "_" & Fichier

ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

je l'est mise dans un dossier sur le bureau pour la donner plus tard a un amis:

C:\Users\CHRISTOPHE\Desktop\seb

mais quand je l'active voici le résultat:

Sub EnregistrerSous()

Dim Chemin As String, Mois As String, Année As String, Fichier As String

If Not ActiveSheet.Name = "CR Facture" Then Exit Sub

Mois = Replace(Replace(Replace(Format(Range("C24").Value, "mmmm"), "é", "e"), "è", "e"), "û", "u")

Année = Year(Range("C24").Value)

'chemin

Chemin = "C:\Users\CHRISTOPHE\Desktop\seb\Factures\Facture "

Chemin = Chemin & Mois & " " & Année & "\Fac " & Mois & " " & Année & "\"

'fichier

Fichier = ActiveWorkbook.Name

Fichier = Range("B24").Value & "_" & Fichier

ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

voila ... merci pour ton aide

STP utilise la balise </>

Maintenant quel est le problème ? sans un bout de fichier cela va être difficile de répondre ...

Au risque de paraitre idiot...

C'est quoi la balise?

Pour etre bref normalement quand j'actionne la macro via un bouton dans le ruban excel (je l'est modifié pour le deuxième fichier) celui-ci prend mon document et l'enregistre avec le numéro ecrit dans la case B24 + nom du document et l'enregistre d'un un dossier prédéfini, hors une fois le fichier contenant la macro déplacer et les dossier prédéfini créer celle-ci ne fonctionne plus..

Oups j'avais juste oublier de créer un dossier...

Merci pour tout de ton aide

pour mettre le code, faire ceci

mon code
capture d ecran 204

Oups j'avais juste oublier de créer un dossier...

Merci pour tout de ton aide

on en reviens à cela :

Bjr

Ceci existe-t-il bien ?

"C:\Users\CHRISTOPHE\Desktop\seb "

y compris avec un espace derrière seb ??

C'est bien cela... Merci beaucoup

et dit moi une idée pour ouvrir un fichier excel en pleine ecran par défaut? mais un seul pas tous les fichiers que j'ouvre?

et également ajouter un bouton sur cette page qui reprendrai la fonction de la croix de fermeture?

Rechercher des sujets similaires à "enregistrement auto vba"