[Catégorie modifiée VB6 --> VBA] Macro enregistrement et ouverture Fichier sourc

bibi91470 Messages postés 7 Date d'inscription samedi 16 octobre 2010 Statut Membre Dernière intervention 20 octobre 2010 - 16 oct. 2010 à 16:35
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 19 oct. 2010 à 08:40
Bonjour j’espère être sufisament claire dans ma demande.

Voila j'ai fait un fichier excel avec des macros pour faire de la facturation .
A chaque utilisation j'ouvrir mon fichier facturation. J'y effectue mes modifications et je crée un numero de facture.

Je souhaiterai lorsque j'enregistre sous mon fichier modifier qu'il porte comme nom mon numero de facture ( cellule b11). un fois enregistrer je voudrai que mon fichier facturation s'ouvre pour me permetre de redemarer une facture .

pouvez vous m'aider?

Merci d'avance

6 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
17 oct. 2010 à 12:21
Salut

Enregistre une macro pendant que tu fais le "Enregistrer sous" à la main et tu n'auras plus qu'à modifier le code généré pour incorporer le contenu de ta cellule au nom du fichier.

"un fois enregistrer je voudrai que mon fichier facturation s'ouvre"
Il est déjà ouvert, pas la peine de l'ouvrir.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
bibi91470 Messages postés 7 Date d'inscription samedi 16 octobre 2010 Statut Membre Dernière intervention 20 octobre 2010
17 oct. 2010 à 14:37
Merci pour ta réponse mais c'est pas vraiment ce que je souhaitais.

Je fait 150 facture par jour alors j'ai pas trop envie de faire enregistrer sous a chaque fois faire une copier de la cellule pour nommer mon fichier.

De plus quand j'enregistre sous mon fichier reste ouvert et remplace ma base facturation. Donc je doit fermer mon fichier enregistrer et reouvrir mon fichier Facturation .
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
17 oct. 2010 à 14:50
Mais l'enregistrement de macro pendant que tu le fais manuellement une dernière fois, te donnera le code tout cuit, à mettre dans un bouton_Click pour faire cette manip, à ta place, d'un simple clic.

Pour refermer un classeur après l'avoir sauvegardé, c'est pareil : tu enregistres une macro pendant que tu fermes un (autre) classeur, et tu auras le code tout cuit.

Réouvrir le classeur initial ? Facile ! (devine)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
17 oct. 2010 à 14:53
PS : Il va de soit qu'une macro ne peut pas se poursuivre une fois qu'on a fermé le classeur qui l'héberge.
Il te faudra peut-être (de préférence), créer un second classeur qui ne te servira qu'à supporter tes macros/ton code afin de pouvoir agir sur le classeur facturation et le refermer.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bibi91470 Messages postés 7 Date d'inscription samedi 16 octobre 2010 Statut Membre Dernière intervention 20 octobre 2010
18 oct. 2010 à 08:44
Bon voila ou j'en suis:

J'ai fait l'enregistrement de la macro " enregistrer sous " et ça m'a écrit ceci:

Sub Macro1()
'
' Macro1 Macro

ChDir "C:\Users\Guillaume\Desktop"
ActiveWorkbook.SaveAs Filename:="C:\Users\Guillaume\Desktop\test2.xls", _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub


Comment je peut dire que je veux qu'il crée un fichier nommé par la cellule "E8" puis que dans ce dossier il mete ma facture nommé par la cellule "B11" .xls

merci d avance de votre aide
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
19 oct. 2010 à 08:40
Bonjour,

Il te faut récupérer le nom contenu dans ta cellule:

Nom_Classeur = Range("B11").value


Puis dans ton code pour Enregistrer :


ActiveWorkbook.SaveAs Filename:="C:\Users\Guillaume\Desktop" & Nom_Classeur & ".xls", _ 
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _ 
ReadOnlyRecommended:=False, CreateBackup:=False 



Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI
0
Rejoignez-nous