Faire fonctionner ce code

rocket4 Messages postés 47 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 31 janvier 2012 - 4 sept. 2011 à 09:54
rocket4 Messages postés 47 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 31 janvier 2012 - 4 sept. 2011 à 22:50
Bonjour

je dispose d'un code permettant d'enregistrer des fiches creés à partir d'une feuille excel
vers un dossier et je souhaiterai savoir comment l'utiliser et les actions à effectuer.
Merci

voici le code :
Sub test()
Dim Nom As String
Nom = [G5]
ActiveSheet.Copy
ActiveWorkbook.SaveAs Nom
End Sub
a++

10 réponses

cs_GG72 Messages postés 94 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 30 octobre 2011
4 sept. 2011 à 10:26
Bonjour Rocket4,

Ton code n'apporte pas grand chose à part enregistrer ton classeur Excel sous un nom de fichier stocké dans cells(5,7) de ta feuille active et si le contenu de cette cellule est un nom de fichier correct.

Et on peut se demander quelle est l'utilité de la ligne:
ActiveSheet.Copy 
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
4 sept. 2011 à 13:10
Bonjour,

ActiveWorkbook.SaveAs [G5]

Doit suffir. Rocket tu ne comprend pas quoi ?

Amicalement,
Us.
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
4 sept. 2011 à 13:15
Bonjour,

Je n'ai pas comprit la question.
Regardes le point 1 qui suit.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
rocket4 Messages postés 47 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 31 janvier 2012
4 sept. 2011 à 14:42
ce que je ne comprend c'est les actions à effectuer une fois le code integré à la feuille
pour verifier que chaque feuille est bien enregistrée quelque part , dans un dossier que je placerai par exemple sur mon bureau

merci

a++
0

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

Posez votre question
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
4 sept. 2011 à 14:51
... Boule de cristal s'il vous plait !

Amicalement,
Us.
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
4 sept. 2011 à 17:37
Oui, on m'a appelé ? (*)

Que veux-tu faire ?
Du moins, quel est ton problème ? car ces lignes peuvent fonctionner.
Si tu as une erreur, dis-nous laquelle (n° et description), dis nous sur quelle ligne le programme s'arrête.
Pour suivre ce que fais ton programme, je te conseille le débogage :
- F9 sur une ligne de code; elle change de couleur
Le programme s'y arrêtera au prochain passage
Survole avec la souris tes variables pour visualiser leur contenu, ou va dans la fenêtre de debogage (Ctrl-G) et tape
? maVariable
pour qu'elle s'inscrive dans la fenêtre.
- F8 (VB6) ou F10 (.Net) pour avancer d'une ligne de code
- F5 pour continuer normalement

Pour toi, [G5], c'est le nom du fichier, [G5].xls, ou bien penses-tu utiliser le contenu de la cellule G5 comme nom de fichier ?
Dans ce dernier cas, il serait souhaitable d'utiliser un syntaxe complète et non embigüe :
Sheets("ma feuille").Range("G5").Value

Je te rappelle aussi que les noms de fichier n'acceptent pas certains caractères : \ / : * ? " < > |
Attention donc aux futures erreurs si tu ne vérifies pas ce détail avant de t'en servir de nom de fichier.
Pour ma part, je remplace l'éventuel caractère non autorisé par un underscore _, simplement avec une série de fonctions Replace.

(*) Champion du monde de boule de cristal 2005-2066

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
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
4 sept. 2011 à 17:39
3 fautes d'orthographe. Je me gâte, je me gâte.
0
rocket4 Messages postés 47 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 31 janvier 2012
4 sept. 2011 à 18:22
bonjour je vous remercie pour vos interventions

mais je pense ne pas avoir été vraiment compris sur ma question ; je propose de la reformuler
autrement :

à partir de la feuille 2 du classeur 1 ,j'ai crée un tableau avec des champs libres qui sont remplis automatiquement via une instruction partant de ma feuille 1 ( un double click sur une ligne transportant tout les elements de cette dernière pour les placer en colonne dans la feuille 2), à chaque fois que tout mes champs sont remplis dans la feuille 2 cela me donne ce que j'appelle une fiche avec des renseignements , à present je souhaite systematiquement enregistrer chaque fiche obtenue sur un dossier de mon bureau et j'appelle ce dossier " FICHES".

En y reflechissant, le code donné auparavant ne pourrait pas conduire à cette manip.
Quelle est la bonne strategie ? et comment enregistrer chaque fiche sous un nom different sans avoir à le stipuler à chaque fois

Si vous avez une idée , en supposant que cela ne doit pas etre un defi , Merci
0
cs_GG72 Messages postés 94 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 30 octobre 2011
4 sept. 2011 à 19:15
Un peu plus clair en effet.

- Tu pourrais exporter ta feuil2 dans un nouveau classeur comportant cette seule fiche pour l'enregistrer dans ton dossier FICHES.
- En ce qui concerne le nom différent de ton classeur tu peux utiliser la date et l'heure courante à ajouter à son nom (Ex Fiche 040911 1915).
0
rocket4 Messages postés 47 Date d'inscription lundi 18 décembre 2000 Statut Membre Dernière intervention 31 janvier 2012
4 sept. 2011 à 22:50
Merci pour vos interventions j'ai solutionné le probleme !
a++
0
Rejoignez-nous