Macro enregistrer nouvelle feuille dans nouveau classeur

DoReg

XLDnaute Nouveau
Bonjour à tous,

Je souhaite créer une macro mais je suis plus que novice en langage VBA....

J'ai une feuille type à compléter , et j'aimerai l'enregistrer dans un classeur qui porte le nom de la cellule "A1", en tant que feuille portant le nom de la cellule "B2", suivant le chemin "L:\commun\Suivi formations".

Pouvez-vous m'aider s'il vous plaît, j'ai déjà testé plusieurs choses qui ne marchent pas forcément (notamment concernant le chemin), mais jamais pour enregistrer dans un nouveau classeur une feuille avec un nouveau nom...

J'espère être claire dans mes explications ^^

Merci :)

DoReg
 

Modeste

XLDnaute Barbatruc
Re : Macro enregistrer nouvelle feuille dans nouveau classeur

Bonjour DoReg et bienvenue,

Puisque c'est ton premier message, il te sera pardonné ;) mais si tu deviens utilisateur régulier (voire assidu) de ce forum, prends le temps de lire Lien supprimé (oui, on insiste, mais à l'usage tu comprendras pourquoi!)

Dans ton cas, un petit fichier aurait permis de déterminer dans quelle feuille il fallait aller chercher les valeurs contenues en A1 et B2 ...
Place le code ci-dessous dans un module standard de ton fichier source:
VB:
Sub createNewFile()
With ThisWorkbook
    .Sheets(3).Copy
    ActiveSheet.Name = .Sheets(1).Range("B2").Value
    ActiveWorkbook.SaveAs "L:\commun\Suivi formations\" & .Sheets(1).Range("A1").Value
End With
End Sub
Dans le code ci-dessus, c'est la troisième feuille du classeur qui est copiée et c'est en feuille1 qu'on prend les valeurs des cellules A1 et B2 ... le tout si j'ai bien compris!?
 
Dernière édition:

DoReg

XLDnaute Nouveau
Re : Macro enregistrer nouvelle feuille dans nouveau classeur

Merci de votre réponse !

Effectivement j'aurais dû lire la Charte, c'est maintenant chose faite :)
J'ai essayé votre code, mais un nouveau classeur est créé à chaque fois :( .Je pense que je me suis mal expliquée, je recommence donc, avec fichier à l'appui cette fois-ci.

La feuille 1 du classeur ZZ.xls joint comporte un questionnaire à remplir, avec deux cellules importantes : A1 et B2.
La cellule A1 est une liste déroulante avec deux choix (ici pour l'exemple : "chien" ou "chat"). J'ai deux autres classeurs nommés "chien" ou "chat", auxquels on accède par le chemin suivant : L:\commun\Suivi formations .
J'aimerai que, une fois complétée, la feuille 1 du classeur ZZ.xls soit enregistrée dans le classeur "chien" ou "chat" (selon ce qui a été choisit), et que cette feuille au sein de ce classeur soit intitulée par le nom présent dans la case B2 précédemment complétée.

De plus, je pense avoir un problème dans l'écriture d'un chemin dans un code vba, car il me semble que des bugs venaient de là lors de mes (nombreux) essais infructueux...
:(

Merci de votre aide !
 

Pièces jointes

  • ZZ.xls
    36 KB · Affichages: 77
  • ZZ.xls
    36 KB · Affichages: 93
  • ZZ.xls
    36 KB · Affichages: 93

Modeste

XLDnaute Barbatruc
Re : Macro enregistrer nouvelle feuille dans nouveau classeur

Bonsoir,

Pour autant que j'aie mieux compris, une variante donc (et dans la pièce jointe, cette fois ;))

Attention, il conviendra d'ajouter aux 3 lignes de code, quelques tests pour vérifier si le classeur "chien" ou "chat" existe bien, s'il n'est pas déjà ouvert, si la feuille à y ajouter n'existe pas déjà, si des caractères interdits dans les noms de feuilles ne sont pas présent en B2, etc.
Par ailleurs, je suppose qu'il faudra ensuite fermer le fichier "chien" ou "chat", en enregistrant les modifications!?

Bref, ceci n'est en rien une procédure "aboutie", mais une base à peaufiner ... voyons d'abord si elle fait ce que tu veux?
 

Modeste

XLDnaute Barbatruc
Re : Macro enregistrer nouvelle feuille dans nouveau classeur

Bonsoir DoReg,

Cependant, je ne trouve pas de pièce jointe ... :confused:
Aaarghhh ... il faut vraiment que j'arrête de boire, si je veux que mes mains fassent ce que mon neurone pense ... parfois! :eek:

Voici donc la pièce jointe ... enfin, je crois ... en tout cas, j'aimerais bien :(
 

Pièces jointes

  • ZZ.xls
    38.5 KB · Affichages: 131
  • ZZ.xls
    38.5 KB · Affichages: 162
  • ZZ.xls
    38.5 KB · Affichages: 166

DoReg

XLDnaute Nouveau
Re : Macro enregistrer nouvelle feuille dans nouveau classeur

Bonjour Modeste,

Je viens de tester ton code, c'est parfait !!!!!! :)
Il me reste juste à rajouter de quoi enregistrer automatiquement le classeur dans laquelle la feuille va se copier, car pour le moment, je ne peux pas sauvegarder deux fois dans le même classeur de destination sous peine d'effacer la feuille précédemment enregistrée...

Je vais essayer de décortiquer ta procédure pour comprendre comment elle fonctionne (je ne suis vraiment pas douée ^^) et voir comment je peux y rajouter ce que je souhaite.

Merci en tous cas du temps que tu as passé sur mon problème ! Tu m'as enlevé une sacrée épine du pied :)

Bonne journée et merci encore :)
 

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 184
Membres
103 152
dernier inscrit
Karibu