Bonsoir,
j'essaie de copier une feuille qui se trouve dans un classeur et que
celui-ci se ferme automatiquement après l'envoi. Cela fonctionne très bien.
Mais voilà, je souhaite renommer cette feuille avant l'envoi afin que le nom
de celle-ci devienne le nom de la pièce jointe.
elle se nomme "toto", je souhaite qu'elle prenne le nom qui se trouve dans
la cellule A15.
Merci beaucoup
Vincent
Private Sub CommandButton1_Click()
UserForm1.Hide
ThisWorkbook.Sheets("toto").Copy
ActiveSheet.Name = Sheets("Feuil1").Range("A15").Value
Application.Dialogs(xlDialogSendMail).Show Adresse,
Sheets("Feuil1").Range("A15").Value
ActiveWorkbook.Close SaveChanges:=False
MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée"
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
JpPradier
Bonsoir Vincent
Modifie ta macro comme suit :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse, Sheets("Feuil1").Range("A15").Value ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Bonsoir Vincent
Modifie ta macro comme suit :
Private Sub CommandButton1_Click()
UserForm1.Hide
NomFeuil=Sheets("Feuil1").Range("A15").Value
ThisWorkbook.Sheets("toto").Copy
ActiveSheet.Name = NomFeuil
Application.Dialogs(xlDialogSendMail).Show Adresse,
Sheets("Feuil1").Range("A15").Value
ActiveWorkbook.Close SaveChanges:úlse
MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée"
End Sub
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse, Sheets("Feuil1").Range("A15").Value ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Vincent
Bonsoir J-p La macro plante au niveau de : ActiveSheet.Name = NomFeuil Car à ce moment là il y a le classeur "toto", et il n'y plus de feuil1 Merci pour ton aide. Vincent
"JpPradier" a écrit dans le message de news:
Bonsoir Vincent
Modifie ta macro comme suit :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse, Sheets("Feuil1").Range("A15").Value ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Bonsoir J-p
La macro plante au niveau de :
ActiveSheet.Name = NomFeuil
Car à ce moment là il y a le classeur "toto",
et il n'y plus de feuil1
Merci pour ton aide.
Vincent
"JpPradier" <jp.pradier.JVeuxPasDeSpam@wanadoo.fr> a écrit dans le message
de news:u35OfpvsEHA.2800@tk2msftngp13.phx.gbl...
Bonsoir Vincent
Modifie ta macro comme suit :
Private Sub CommandButton1_Click()
UserForm1.Hide
NomFeuil=Sheets("Feuil1").Range("A15").Value
ThisWorkbook.Sheets("toto").Copy
ActiveSheet.Name = NomFeuil
Application.Dialogs(xlDialogSendMail).Show Adresse,
Sheets("Feuil1").Range("A15").Value
ActiveWorkbook.Close SaveChanges:úlse
MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée"
End Sub
Bonsoir J-p La macro plante au niveau de : ActiveSheet.Name = NomFeuil Car à ce moment là il y a le classeur "toto", et il n'y plus de feuil1 Merci pour ton aide. Vincent
"JpPradier" a écrit dans le message de news:
Bonsoir Vincent
Modifie ta macro comme suit :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse, Sheets("Feuil1").Range("A15").Value ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
JpPradier
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click()
UserForm1.Hide
NomFeuil=Sheets("Feuil1").Range("A15").Value
ThisWorkbook.Sheets("toto").Copy
ActiveSheet.Name = NomFeuil
Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil
ActiveWorkbook.Close SaveChanges:úlse
MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée"
End Sub
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Vincent
Merci beaucoup Jp, c'est impeccable ! Une petite dernière. Comment puis je avoir le nom de la PJ comme le nom du classeur ? Merci encore Vincent
"JpPradier" a écrit dans le message de news:
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Merci beaucoup Jp, c'est impeccable !
Une petite dernière.
Comment puis je avoir le nom de la PJ comme le nom du classeur ?
Merci encore
Vincent
"JpPradier" <jp.pradier.JVeuxPasDeSpam@wanadoo.fr> a écrit dans le message
de news:ejZtYyvsEHA.3556@TK2MSFTNGP10.phx.gbl...
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans
laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je
n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click()
UserForm1.Hide
NomFeuil=Sheets("Feuil1").Range("A15").Value
ThisWorkbook.Sheets("toto").Copy
ActiveSheet.Name = NomFeuil
Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil
ActiveWorkbook.Close SaveChanges:úlse
MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée"
End Sub
Merci beaucoup Jp, c'est impeccable ! Une petite dernière. Comment puis je avoir le nom de la PJ comme le nom du classeur ? Merci encore Vincent
"JpPradier" a écrit dans le message de news:
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
michdenis
Bonjour Vincent,
Le nom officiel du classeur s'attribue au moment de l'enregistrement de ce dernier par
ThisWorkbook.saveas CheminNomDuClasseur & ".xls"
Mais temporairement on peut modifier l'affichage de la barre de titre de l'application comme ceci :
"Vincent" a écrit dans le message de news:uEqc$ Merci beaucoup Jp, c'est impeccable ! Une petite dernière. Comment puis je avoir le nom de la PJ comme le nom du classeur ? Merci encore Vincent
"JpPradier" a écrit dans le message de news:
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub
j-p
Bonjour Vincent,
Le nom officiel du classeur s'attribue au moment de l'enregistrement de ce dernier par
ThisWorkbook.saveas CheminNomDuClasseur & ".xls"
Mais temporairement on peut modifier l'affichage de la barre de titre de l'application comme ceci :
"Vincent" <V.herlat@tiscali.fr> a écrit dans le message de news:uEqc$BwsEHA.3324@TK2MSFTNGP15.phx.gbl...
Merci beaucoup Jp, c'est impeccable !
Une petite dernière.
Comment puis je avoir le nom de la PJ comme le nom du classeur ?
Merci encore
Vincent
"JpPradier" <jp.pradier.JVeuxPasDeSpam@wanadoo.fr> a écrit dans le message
de news:ejZtYyvsEHA.3556@TK2MSFTNGP10.phx.gbl...
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans
laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je
n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click()
UserForm1.Hide
NomFeuil=Sheets("Feuil1").Range("A15").Value
ThisWorkbook.Sheets("toto").Copy
ActiveSheet.Name = NomFeuil
Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil
ActiveWorkbook.Close SaveChanges:úlse
MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée"
End Sub
"Vincent" a écrit dans le message de news:uEqc$ Merci beaucoup Jp, c'est impeccable ! Une petite dernière. Comment puis je avoir le nom de la PJ comme le nom du classeur ? Merci encore Vincent
"JpPradier" a écrit dans le message de news:
Ben justement, c'est pour ça qu'on passe par la variable NomFeuil dans laquelle on recupere le
contenu de A15 avant de changer de classeur. Ca devrait pas planter. Je n'avais pas vue la coupure
dans la ligne Application.Dialogs...Voici corrigé :
Private Sub CommandButton1_Click() UserForm1.Hide NomFeuil=Sheets("Feuil1").Range("A15").Value ThisWorkbook.Sheets("toto").Copy ActiveSheet.Name = NomFeuil Application.Dialogs(xlDialogSendMail).Show Adresse,NomFeuil ActiveWorkbook.Close SaveChanges:úlse MsgBox "La feuille de calcul a été envoyé vers l'adresse spécifiée" End Sub