une petite macro

12/08-2008 à 18:26Bonjour les artistes,
Voila ce que je recherche, je fais une petite macro travaillant sur deux classeurs.
Je voudrais renommer une desfeuilles (pas le classeur) automatiquement en lui donnant soit la date du jour, ou soit en lui faisant copier ce qui est ecrit dans une cellule...
Mais je n arrive pas a trouver la commande dans la macro...pour lui dire "va a telle cellule...copie en le contenu et colle le comme nom pour la feuille...hmmmm
Quelqu un arriverait il a me depanner ?
Amicalement


----------
Mister Titi



13/08-2008 à 09:08Bonjour,

En adaptant tu devrais trouver ton bonheur ici
http://www.presence-pc.com/forum/ppc/Programmation/excel-macro-creant-feuille-donnant-cellule-sujet-3542-1.htm


----------
image


une petite macro
13/08-2008 à 10:30Bonjour,

Vas voir sur ce site, tu trouveras peut être ton bonheur :

http://excel-downloads.com/

Patrick


----------
La Vie n'est pas un long fleuve tranquille


13/08-2008 à 12:48Bonjour,

ça m a l air compliqué... [;(]
En resumant vraiment ce que je voudrais c est
Attribuer une cellule a exel qui serait le nom de sauvegarde du document
et attribuer une cellule a excel qui serait le nom d une feuille de calcul
je vois que je suis un super nul !!


----------
Mister Titi


13/08-2008 à 23:37Bonjour,

ça m a l air compliqué...

Mais non !
Voici 2 solutions

Solution 1
Renommer une des feuilles (dans l'exemple la 2) avec le contenu de la cas A1 de la feuille 1

Sub RenomFeuil2()
Nom = Sheets("Feuil1").Range("A1")
Sheets(2).Name = Nom
End Sub


Solution 2
Renommer une des feuilles (dans l'exemple la 3) avec la date du jour

Sub RenomFeuil3()
Sheets(3).Name = Format(Date, "dd-mm-yy")
End Sub


J'ai mi pour la date le format 13-08-08 car les / (13/08/08) ne sont pas autorisés dans les noms de feuille.
Après il te suffit de lancer la macro qui convient au moment que tu veux, (ouverture du fichier, fermeture du fichier, enregistrement du fichier, en cliquant sur un bouton...)

Modifie par Pegase le 13/08/2008 à  23:40:


----------
image


une petite macro
14/08-2008 à 11:39Bonjour,

Merci beaucoup pour ta patience et aide,
Heuu si c est compliqué quand on ne connait rien en Vba et que je commence a regarder qui correspond a quoi... [:)(] , mais ces exemples sont d une grande aide.
Enfin, ça marche avec le remplacement pour la date, mais pas pour le remplacement de cellule d un nom...(le 1e exemple)
Sans vouloir abuser, et dans le même style, comment faire pour sauvegarder tout le document avec une cellule attribuée ?
Encore merci


----------
Mister Titi


14/08-2008 à 12:43Comme c est dangereux ces macros...
Le travail que je fais c est une importation de données que je ramene dans un dossier général...et en même temps je renomme cette feuille avec la date du jour.
Avec l exemple que tu m as donné, Sheets(3).Name = Format(Date, "dd-mm-yy")...c est automatiquement la troisieme feuille qui va être renommée ainsi.
Ce que je voudrais faire, c est inserer une nouvelle feuille de calcul, de la placer a la fin, et de renommer cette feuille par la date. Et non lui attribuer une feuille precise (qui risque d effacer une qui existe deja...)
Si il existe un petit fascicule sur ces commandes, ça m interesse car la, je regarde avec l editeur de excel...et ça me parait compliqué.
Merci d avance



----------
Mister Titi


14/08-2008 à 21:40Yop les amis, sur un autre forum on m a filé une autre astuce,
Je la donne ici aussi, elle me parait cool car elle insere a la fin du fichier une nouvelle feuille (ce qui evite des betises non ?)
j aimerais bien connaitre egalement un lien (si vous connaissez) ou je pourrais voir les differentes propriétés des commandes de macros comme Sheets etc...

Sub test()
Worksheets.Add after:=Sheets(Sheets.Count) '<-- ajout d'une feuille et placement en dernière position
Sheets(Sheets.Count).Name = Format(Now, "dd-mm-yyyy hh.mm.ss") '<-- renommer cette nouvelle feuille
End Sub

Dans l'exemple ci-dessus j'ai ajouté les secondes dans le nom de la feuille afin d'éviter le bug en cas de création de plusieurs feuilles dans la même minute mais on pourrait très bien utiliser autre chose que les secondes pour les différencier, par exemple un n°

Sub test()
Worksheets.Add after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = Sheets.Count & " - " & Format(Now, "dd-mm-yyyy hh.mm")
End Sub



----------
Mister Titi


Merci de vous identifier

« Forum technique (liste des messages)8 enregistrements / page 1/1