enregistrer-sous et rester sur la page active

  • Initiateur de la discussion Initiateur de la discussion moff
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

moff

Guest
Bonjour et a l'aiiide

je cherche a obtenir une macro qui enregistre mon fichier excel, nommé par le contenu d'une cellule MAIS sans changer la feuille active. Je dois continuer a travailler sur celle-ci:

Dim str As String

Dim dir As String

dir = "J:\pro\Compta\facturations\Archives/"

Range("U28").Select

str = dir & ActiveCell.Text & ".xls"

ActiveWorkbook.SaveAs Filename:= _
str, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False

End Sub


😡 je me retrouve sur le nouveau fichier U28


la solution peut etre
ActiveWorkbook.SaveCopyAs "J:\pro\Compta\facturations\Archives\MonDouble.xls"

End Sub

Et la le drame je n'arrive pas a definir une cellule pour nommer le fichier



Merci d avance
 
Re : enregistrer-sous et rester sur la page active

bonjour

ceci est normal un classeur enregistré sous un autre nom porte le nouveau nom

tu dois créer un nouveau classeur dans lequel tu copy tes données
et que tu enregistres sous le nom que tu veux et tu le close
tu restera dans ton classeur d'origine

A plus. Roland_M
 
Re : enregistrer-sous et rester sur la page active

Bonsoir Mof et le Forum,

Voici ta macro modifiée très peu, et mise dans "ThisWorkBooks":

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   Dim str As String
   Dim dir As String
   dir = "J:\pro\Compta\facturations\Archives\"
   Range("U28").Select
   str = dir & ActiveCell.Text & ".xls"
   ActiveWorkbook.SaveAs Filename:=str
End Sub

Il suffit de cliquer sur l'icône de la disquette dans la barre d'outils pour faire fonctionner la macro.

Bon test
 
Re : enregistrer-sous et rester sur la page active

merci....

seul petit hic, ma macro est vraiement longue, et l enregistrement est final.
je ne peux pas l inclure dans thisworkbooks, je dois la lancer depuis un boutton.

et donc la re-hic, l enregistrement se fait mais je me retrouve sur la nouvelle page enregistré....

Si vous avez une idée?????

merci encore de la rapidité de réponse
 
Re : enregistrer-sous et rester sur la page active

re bonjour,
Créer 2 CommandButtons 1'pour SaveNew 2'pour rappelOld
Essai ceci dans classeur vierge et tu verras ça marche !
Public NomDuClasseurOrigine$, NomDuNouveauClasseur$ ' à toi de voir ou tu initialises tes noms !?

Public Sub ButtonSaveNouveauClasseur_Click()
NomDuClasseurOrigine$ = ThisWorkbook.Name
NomDuNouveauClasseur$ = "ClasseurNEW.xls" ' à toi de voir ou tu initialises le nom !?
Workbooks(ThisWorkbook.Name).SaveAs Filename:=NomDuNouveauClasseur$
End Sub

Public Sub ButtonLoadClasseurOrigine_Click()
Workbooks.Open Filename:=NomDuClasseurOrigine$
Workbooks(NomDuNouveauClasseur$).Close SaveChanges:=False
End Sub

A plus Roland_M
 
Re : enregistrer-sous et rester sur la page active

Rebonsoir Moff et le Forum,

Voici ma macro précédente amèliorée pour faire ce que tu veux. Sauvegarde du classeur et retour sur le classeur d'origine. j'ai supposé qu'ils étaient dans le même répertoire. Créer un seul bouton pour appeler la macro "Sauvegarde"

Code:
Sub Sauvegarde()
Dim str As String Dim dir As String, Nom as string
Nom = ActiveWorkbook.Name
dir = "J:\pro\Compta\facturations\Archives\"
Range("U28").Select
str = dir & ActiveCell.Text & ".xls"
ActiveWorkbook.SaveAs Filename:=str
Workbooks.Open dir & Nom
Workbooks(str).Activate
ActiveWorkbook.Close Savechanges:=True
End Sub

Bon test.

Ps : Bonsoir Merda Roland, je n'avais pas vu ta réponse.
 
Dernière édition:
Re : enregistrer-sous et rester sur la page active

Merci beaucoup tout le monde, probleme résolu... je dispose d un bon outils de travail maintenant.🙂
La solution adopté:


Sub sauvegarde ()


ActiveWorkbook.Save


Dim str As String

Dim dir As String

dir = "J:\pro\Compta\facturations\Archives/"

Range("u28").Select

str = dir & ActiveCell.Text & ".xls"

ActiveWorkbook.SaveCopyAs Filename:=str

Range("A1").Select



End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
20
Affichages
4 K
M
Réponses
10
Affichages
2 K
MOA_Excel
M
S
Réponses
0
Affichages
948
S
T
Réponses
8
Affichages
2 K
S
Réponses
12
Affichages
2 K
soffianne
S
J
Réponses
0
Affichages
1 K
julie13
J
J
Réponses
10
Affichages
20 K
jeremy6812
J
Retour