Enregistrer sous selon nom de cellule
Shadtita
Messages postés
43
Statut
Membre
-
Shadtita Messages postés 43 Statut Membre -
Shadtita Messages postés 43 Statut Membre -
Bonjour,
Je souhaiterais savoir s'il est possible de créer une macro qui permette l'enregistrement d'un fichier selon un nom de cellule ?
Par exemple, la cellule C2 se nomme "trucmachin", je voudrais avoir un bouton ou autre me permettant d'enregistrer directement le doc en "trucmachin" sans passer par "enregistrer sous" et de préférence dans un dossier spécifié !
Merci par avance...
Je précise que je ne connais absolument rien à VBA :( malheureusement d'ailleurs !
Je souhaiterais savoir s'il est possible de créer une macro qui permette l'enregistrement d'un fichier selon un nom de cellule ?
Par exemple, la cellule C2 se nomme "trucmachin", je voudrais avoir un bouton ou autre me permettant d'enregistrer directement le doc en "trucmachin" sans passer par "enregistrer sous" et de préférence dans un dossier spécifié !
Merci par avance...
Je précise que je ne connais absolument rien à VBA :( malheureusement d'ailleurs !
A voir également:
- Enregistrer sous selon nom de cellule
- Audacity enregistrer son pc - Guide
- Comment enregistrer une conversation - Guide
- Enregistrer son ecran - Guide
- Proteger cellule excel - Guide
- Comment enregistrer un mail - Guide
36 réponses
wahou c'est trop bien !
Merci beaucoup !
je vais re relire tout ça hihihi.
Désolée pour mon "exprimation" (héhé) mais je ne connais pas les termes exacts !
J'essaye et je te tiens au courant ! Merci encore de m'avoir expliqué tout ça !
Merci beaucoup !
je vais re relire tout ça hihihi.
Désolée pour mon "exprimation" (héhé) mais je ne connais pas les termes exacts !
J'essaye et je te tiens au courant ! Merci encore de m'avoir expliqué tout ça !
Arf, je croyais avoir compris mais mais mais !
Quand je test, la dernière ligne est surlignée en jaune :
Private Sub CommandButton1_Click()
Dim vas As String
Var = "W:\nomdelentreprise\TRANSACTIONS\Commandes\"
ActiveWorkbook.SaveAs Filename:=(Var & "\" & [B12] & ".xls")
End Sub
pardon pardon pour ma bêtise !
et pendant que j'y pense, à la fin tu mets ".xls" : y aurait il moyen de passer par là pour que ça se transforme en PDF ?
*ah si j'avais mon technicien sur place**soupir*
Quand je test, la dernière ligne est surlignée en jaune :
Private Sub CommandButton1_Click()
Dim vas As String
Var = "W:\nomdelentreprise\TRANSACTIONS\Commandes\"
ActiveWorkbook.SaveAs Filename:=(Var & "\" & [B12] & ".xls")
End Sub
pardon pardon pour ma bêtise !
et pendant que j'y pense, à la fin tu mets ".xls" : y aurait il moyen de passer par là pour que ça se transforme en PDF ?
*ah si j'avais mon technicien sur place**soupir*
Et oui lapon compris...
Non mon code tu n'y touches pas!!!!!
Il fait tout, tout seul! C'est lui qui va chercher le chemin tout seul avec ActiveWorkbook.Path et c'est lui qui va chercher le nom du fichier en A1. Tout, tout seul!! C'est à cela que servent les macros.
Bon code :
Private Sub CommandButton1_Click()
Dim var As String
var = ActiveWorkbook.Path
ActiveWorkbook.SaveAs (var & "\" & [A1] & ".xls")
End sub
épissétou.
Pour le pdf, comment dire... Faut pas rêver, ça serait trop simple. As tu Adobe Acrobat Standard? (pas le reader, celui un p'tit peu plus évole?)
Non mon code tu n'y touches pas!!!!!
Il fait tout, tout seul! C'est lui qui va chercher le chemin tout seul avec ActiveWorkbook.Path et c'est lui qui va chercher le nom du fichier en A1. Tout, tout seul!! C'est à cela que servent les macros.
Bon code :
Private Sub CommandButton1_Click()
Dim var As String
var = ActiveWorkbook.Path
ActiveWorkbook.SaveAs (var & "\" & [A1] & ".xls")
End sub
épissétou.
Pour le pdf, comment dire... Faut pas rêver, ça serait trop simple. As tu Adobe Acrobat Standard? (pas le reader, celui un p'tit peu plus évole?)
Ben j'sais pas moi ça pourrait ^^
Je ne sais pas ce que l'on a ici, je sais que pour créer des PDF on utilise CutePDF (on fait imprimer, CutePDF et hop hop hop !)
cela dit...ça ne marche pas :(
il faut que j'écrive en A1 le fameux chemin peut-etre non ?
Je ne sais pas ce que l'on a ici, je sais que pour créer des PDF on utilise CutePDF (on fait imprimer, CutePDF et hop hop hop !)
cela dit...ça ne marche pas :(
il faut que j'écrive en A1 le fameux chemin peut-etre non ?
NONNNNNNNNNNNNN!!
pardon, cela ne se reproduira plus (peut être...)
En A1, tu ne mets que le nom du fichier. exemple : devis 197. épicétou. Le chemin C:\blablabla et l'extension ".xls" se mettent tout seul.
Tu peux l'avoir dans une autre cellule. Si tu veux indiquer ton nom de fichier en AZ36589, il te suffit de changer le code de la macro en mettant :
Private Sub CommandButton1_Click()
Dim var As String
var = ActiveWorkbook.Path
ActiveWorkbook.SaveAs (var & "\" & [AZ36589] & ".xls")
End sub
pardon, cela ne se reproduira plus (peut être...)
En A1, tu ne mets que le nom du fichier. exemple : devis 197. épicétou. Le chemin C:\blablabla et l'extension ".xls" se mettent tout seul.
Tu peux l'avoir dans une autre cellule. Si tu veux indiquer ton nom de fichier en AZ36589, il te suffit de changer le code de la macro en mettant :
Private Sub CommandButton1_Click()
Dim var As String
var = ActiveWorkbook.Path
ActiveWorkbook.SaveAs (var & "\" & [AZ36589] & ".xls")
End sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mais heuuuu !!!
Comment il peut savoir où je veux le mettre si je lui dis paaaaaaaaaaas !
en plus quand j'essaye comme ça, en mettant juste ton code, il me surligne encore en jaaaaaaaaaaaune !
Comment il peut savoir où je veux le mettre si je lui dis paaaaaaaaaaas !
en plus quand j'essaye comme ça, en mettant juste ton code, il me surligne encore en jaaaaaaaaaaaune !
Ben tu lui dis, en gras : ActiveWorkbook.SaveAs (var & "\" & [AZ36589] & ".xls")
EDIT : pardon tu parlais sans doute du chemin...
Ben tu lui dis, en gras : var = ActiveWorkbook.path
ActiveWorkbook.SaveAs (var & "\" & [AZ36589] & ".xls")
EDIT : pardon tu parlais sans doute du chemin...
Ben tu lui dis, en gras : var = ActiveWorkbook.path
ActiveWorkbook.SaveAs (var & "\" & [AZ36589] & ".xls")
ne me gronde pas :''( je vais pleurer...je comprends pas :(
tu me disais que AZ36589 c'est le nom de mon fichier... et maintenant c'est ma destination de fichier :''(
tu me disais que AZ36589 c'est le nom de mon fichier... et maintenant c'est ma destination de fichier :''(
...je dois mettre ça en gras ....
vraiment je t'admire pour ta patience !
vraiment je t'admire pour ta patience !
T'inquiète, c'est agréable de sentir que quelqu'un veux aller au bout des choses. Après tout tu aurais aussi bien pu venir ici, demander le code, revenir pour le copier coller, sans remercier ni comprendre. Le merci, on s'en f**** (même si ça fait toujours plaisir) mais la compréhension est super importante. Bravo à toi par conséquent.
Et non tu ne le mets pas en gras, ça sert à rien........
Et non tu ne le mets pas en gras, ça sert à rien........
hihi je fais ce que je peux pourtant...
que puis je faire alors pour que ça marche !
je veux que ça aille dans ce dossier => "W:\nomdelentreprise\TRANSACTIONS\Factures\"
que puis je faire alors pour que ça marche !
je veux que ça aille dans ce dossier => "W:\nomdelentreprise\TRANSACTIONS\Factures\"
Alors, tu ouvres, sur le poste de travail de chaque utilisateur ton fichier. Tu l'enregistres sous : "W:\nomdelentreprise\TRANSACTIONS\Factures\"
Tu le fermes.
Tu l'ouvres à nouveau écris un nom dans la cellule que tu as choisit (A1 dans mon exemple initial) par exemple écris : test puis lance la macro. Si tout fonctionne ferme le fichier et va voir dans "W:\nomdelentreprise\TRANSACTIONS\Factures\" Normalement tu auras 2 fichiers : le tien et un appelé test.xls...
A priori, tu ne dois pas faire ça sur chaque poste puisque le chemin, vraisemblablement sera le même... Fais le sur 2 postes, si ça fonctionne c'est cool...
Tu le fermes.
Tu l'ouvres à nouveau écris un nom dans la cellule que tu as choisit (A1 dans mon exemple initial) par exemple écris : test puis lance la macro. Si tout fonctionne ferme le fichier et va voir dans "W:\nomdelentreprise\TRANSACTIONS\Factures\" Normalement tu auras 2 fichiers : le tien et un appelé test.xls...
A priori, tu ne dois pas faire ça sur chaque poste puisque le chemin, vraisemblablement sera le même... Fais le sur 2 postes, si ça fonctionne c'est cool...
okai okai je vais essayer ça.
Mais est ce nécessaire de mettre le fichier dans le dossier ou on veut l'enregistrer ?
Parce qu'en fait, je comptais enregistrer mon fichier dans "modèle" parce que j'ai peur que les gens le détruisent par mégarde en enregistrant par dessus !
Mon fichier est actuellement ici : W:\nomdelentreprise\Moi\doc\modeles
Mais est ce nécessaire de mettre le fichier dans le dossier ou on veut l'enregistrer ?
Parce qu'en fait, je comptais enregistrer mon fichier dans "modèle" parce que j'ai peur que les gens le détruisent par mégarde en enregistrant par dessus !
Mon fichier est actuellement ici : W:\nomdelentreprise\Moi\doc\modeles
Mais est ce nécessaire de mettre le fichier dans le dossier ou on veut l'enregistrer ? Avec ma macro oui.
2 choix, soit tu empêches les utilisateurs d'enregistrer avec le même nom qu'à l'ouverture, soit on change la macro en lui indiquant le "chemin" de sauvegarde. Que préfères tu?
2 choix, soit tu empêches les utilisateurs d'enregistrer avec le même nom qu'à l'ouverture, soit on change la macro en lui indiquant le "chemin" de sauvegarde. Que préfères tu?
tatatata, ni l'un ni l'autre je veux les 2 ^^
Mais je peux le mettre dans le dossier s'il n'y a que ça hihi.
sinon pour le transformer en PDF simplement, as tu une idée ? (j'en profite vu que tu t'y connais à max !)
ps : je débauche à 17h donc si mon souci n'est point résolu je reviens demain, j'espère que tu seras là !
Edit, je viens de penser que dans mon fichier il y a 2 onglets, et donc 2 boutons pour enregistrer...mais dans 2 répertoires différents !!! (l'autre c'est pas "commande" mais "facture") donc je vais avoir un hic pour enregistrer non ?
Mais je peux le mettre dans le dossier s'il n'y a que ça hihi.
sinon pour le transformer en PDF simplement, as tu une idée ? (j'en profite vu que tu t'y connais à max !)
ps : je débauche à 17h donc si mon souci n'est point résolu je reviens demain, j'espère que tu seras là !
Edit, je viens de penser que dans mon fichier il y a 2 onglets, et donc 2 boutons pour enregistrer...mais dans 2 répertoires différents !!! (l'autre c'est pas "commande" mais "facture") donc je vais avoir un hic pour enregistrer non ?
T'inquiète, je vais y passer la nuit...
Allons y pour les 2. Je t'en livre une de suite, la 2ème faut que je réfléchisse un minimum.
Pour enregistrer systématiquement dans un répertoire différent de celui ouvert : celui que tu m'as donné tout à l'heure...
Private Sub CommandButton1_Click()
Dim var As String
var = W:\nomdelentreprise\TRANSACTIONS\Factures
ActiveWorkbook.SaveAs (var & "\" & [A1] & ".xls")
End sub
2ème solution : Accroches toi c'est plus difficile
Clic droit sur l'onglet de ta feuille "visualiser le code" sur la gauche de ta fenêtre VB tu vois une petite fenêtre avec :
Feuil1
Feuil2
Feuil3
This WorkBook
Double Cliquer sur This WorkBook
taper : (ou copier coller)
Private Sub Workbook_Open()
[AZ1] = [A1]
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If [AZ1] = [A1] Then
MsgBox ("vous devez changer le nom du fichier")
End If
End Sub
Ca n'empêchera pas le vicieux qui se fiche de tout d'annuler, mais ça fait un beau rappel pour les imprudents.
La suite demain, si tu veux bien
Allons y pour les 2. Je t'en livre une de suite, la 2ème faut que je réfléchisse un minimum.
Pour enregistrer systématiquement dans un répertoire différent de celui ouvert : celui que tu m'as donné tout à l'heure...
Private Sub CommandButton1_Click()
Dim var As String
var = W:\nomdelentreprise\TRANSACTIONS\Factures
ActiveWorkbook.SaveAs (var & "\" & [A1] & ".xls")
End sub
2ème solution : Accroches toi c'est plus difficile
Clic droit sur l'onglet de ta feuille "visualiser le code" sur la gauche de ta fenêtre VB tu vois une petite fenêtre avec :
Feuil1
Feuil2
Feuil3
This WorkBook
Double Cliquer sur This WorkBook
taper : (ou copier coller)
Private Sub Workbook_Open()
[AZ1] = [A1]
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If [AZ1] = [A1] Then
MsgBox ("vous devez changer le nom du fichier")
End If
End Sub
Ca n'empêchera pas le vicieux qui se fiche de tout d'annuler, mais ça fait un beau rappel pour les imprudents.
La suite demain, si tu veux bien
hihi je vais te transformer en zombie ^^
merci de chercher encore c'est vraiment gentil !
bon je commence mes questions !
Qu'as tu changé dans la 1ère solution ? =>
Private Sub CommandButton1_Click()
Dim var As String
var = W:\nomdelentreprise\TRANSACTIONS\Factures
ActiveWorkbook.SaveAs (var & "\" & [A1] & ".xls")
End sub
pour ce qui est de la 2ème, si j'ai bien suivi, c'est s'il n'y a rien dans la cellule censée changer le nom, un message indique à l'utilisateur de le mettre ? ou est ce si le boulet qui n'a pas changé le nom enregistrer, un message lui indique de modifier le nom ?
parce que j'ai créé un bouton, mais il est possible que l'utilisateur clic sur la disquette pour enregistrer et patatra adieu mon beau travail (hihi)
c'est dommage qu'on soit en réseau, parce que ça marchait bien sinon pour enregistrer et tout ça !!!
merci de chercher encore c'est vraiment gentil !
bon je commence mes questions !
Qu'as tu changé dans la 1ère solution ? =>
Private Sub CommandButton1_Click()
Dim var As String
var = W:\nomdelentreprise\TRANSACTIONS\Factures
ActiveWorkbook.SaveAs (var & "\" & [A1] & ".xls")
End sub
pour ce qui est de la 2ème, si j'ai bien suivi, c'est s'il n'y a rien dans la cellule censée changer le nom, un message indique à l'utilisateur de le mettre ? ou est ce si le boulet qui n'a pas changé le nom enregistrer, un message lui indique de modifier le nom ?
parce que j'ai créé un bouton, mais il est possible que l'utilisateur clic sur la disquette pour enregistrer et patatra adieu mon beau travail (hihi)
c'est dommage qu'on soit en réseau, parce que ça marchait bien sinon pour enregistrer et tout ça !!!