OVH Cloud OVH Cloud

Sauvegarde feuille dans un fichier

6 réponses
Avatar
Cynoq
Bonjour,
je débute sous Excel et VB, et je viens de rencontrer un petit obstacle.
J'aimerai enregistrer une feuille (désignée ou active, peu m'importe) sous
un fichier différent que celui actif, en récupérant le texte se situant dans
une cellule.

Quelqu'un a une solution?

Freddy

6 réponses

Avatar
papou
Bonjour Freddy
en récupérant le texte se situant dans
une cellule.
Tu veux sans doute dire pour le nom du classeur ??

Sub CopieLa()
Feuil1.Copy
ActiveWorkbook.SaveAs Feuil1.Range("A1") & ".xls"
End Sub

Cordialement
Pascal

"Cynoq" a écrit dans le message de
news:c1kh8q$6qu$
Bonjour,
je débute sous Excel et VB, et je viens de rencontrer un petit obstacle.
J'aimerai enregistrer une feuille (désignée ou active, peu m'importe) sous
un fichier différent que celui actif, en récupérant le texte se situant
dans

une cellule.

Quelqu'un a une solution?

Freddy




Avatar
Cynoq
Tu veux sans doute dire pour le nom du classeur ??


Non, je veux bien dire le texte se trouvant dans une cellule.
J'ai bien trouvé un script qui permet de récupérer le nom d'une cellule,
mais le problème est qu'il enregistre le classeur complet et non pas la
feuille active.
Voici ce script :

Sub NomClasseur()
Dim Chr As String 'déclare la variable
Chr = Range("Essai!C1")'Feuille Essai et cellule C1
ChDrive "C" 'si C n'est pas le disque par défaut
ChDir "C:ajeter"
ActiveWorkbook.SaveAs Filename:=(Chr)
End Sub

Freddy

Avatar
Cynoq
Sub NomClasseur()
Dim Chr As String 'déclare la variable
Chr = Range("Essai!C1")'Feuille Essai et cellule C1
ChDrive "C" 'si C n'est pas le disque par défaut
ChDir "C:ajeter"
ActiveWorkbook.SaveAs Filename:=(Chr)
End Sub


Je suppose que l'erreur vient de ActiveWorkbook mais je ne connait pas la
commande a utiliser pour n'enregistrer que la feuille.

Avatar
papou
Cynoq
Ben tu as testé ce que je t'ai envoyé ?
Il suffit d'y ajouter ton chdrive et ton chdir !
Pascal

"Cynoq" a écrit dans le message de
news:c1kif9$5q2$

Sub NomClasseur()
Dim Chr As String 'déclare la variable
Chr = Range("Essai!C1")'Feuille Essai et cellule C1
ChDrive "C" 'si C n'est pas le disque par défaut
ChDir "C:ajeter"
ActiveWorkbook.SaveAs Filename:=(Chr)
End Sub


Je suppose que l'erreur vient de ActiveWorkbook mais je ne connait pas la
commande a utiliser pour n'enregistrer que la feuille.





Avatar
Philippe.R
Bonjour,

"mais je ne connais pas la commande a utiliser pour n'enregistrer que la feuille."

Sheets("Feuil1").Copy

copie la feuille 1 seule
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Cynoq" a écrit dans le message de
news:c1kif9$5q2$

Sub NomClasseur()
Dim Chr As String 'déclare la variable
Chr = Range("Essai!C1")'Feuille Essai et cellule C1
ChDrive "C" 'si C n'est pas le disque par défaut
ChDir "C:ajeter"
ActiveWorkbook.SaveAs Filename:=(Chr)
End Sub


Je suppose que l'erreur vient de ActiveWorkbook mais je ne connait pas la
commande a utiliser pour n'enregistrer que la feuille.





Avatar
Michèle
Bonjour,

J'ai peut être mal compris le problème, mais si tu fais simplement un clic
droit sur l'onglet à recopier
Tu cliques sur Déplacer ou copier
tu choisis la destination : un nouveau classeur
tu selectionnes la feuille à copier
et tu n'oublies pas de cocher "créer une copie"

Si tu préfères une macro, tu fais la même chose après avoir créé une
nouvelle macro en enregistrement automatique
Bonne journée

Michèle

"Cynoq" a écrit dans le message de news:
c1kh8q$6qu$
Bonjour,
je débute sous Excel et VB, et je viens de rencontrer un petit obstacle.
J'aimerai enregistrer une feuille (désignée ou active, peu m'importe)
sous

un fichier différent que celui actif, en récupérant le texte se situant
dans

une cellule.

Quelqu'un a une solution?

Freddy