Inverser automatiquement les noms des onglets

Résolu/Fermé
Alem13 Messages postés 40 Date d'inscription jeudi 6 juin 2013 Statut Membre Dernière intervention 5 juillet 2013 - 13 juin 2013 à 09:42
Alem13 Messages postés 40 Date d'inscription jeudi 6 juin 2013 Statut Membre Dernière intervention 5 juillet 2013 - 14 juin 2013 à 15:25
Bonjour,

J'ai une macro permettant de regrouper différents onglets dans un classeur. Je souhaiterais insérer un code permettant d'inverser les noms des onglets au moment de leur regroupement.

Ex: Au départ, j'ai les onglets chocolat-noir, chocolat-aulait, chocolat-blanc et je voudrais avoir dans le classeur final noir-chocolat, aulait-chocolat, blanc-chocolat.

En imaginant qu'il existe beaucoup plus de chocolats (chocolat-praliné, chocolat-pistache...) ce qui nécessite une systématisation du process d'inversion des noms.

Quelqu'un voit-il comment faire?

En vous remerciant par avance
A voir également:

2 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
13 juin 2013 à 10:05
Bonjour,

Sub renommeFeuilles()
    Dim sh As Worksheet, p As Long
    For Each sh In Worksheets
        p = InStr(sh.Name, "-")
        If p > 0 Then sh.Name = Split(sh.Name, "-")(1) & "-" & Split(sh.Name, "-")(0)
    Next sh
End Sub 

eric
1
noctambule28 Messages postés 31791 Date d'inscription samedi 12 mai 2007 Statut Webmaster Dernière intervention 13 février 2022 2 858
13 juin 2013 à 10:32
Salut eriiic,

J'adore ce type de réponse sans bavure;-)
Tu ne penses pas que c'est le type de question/réponse qui pourrait faire une fiche pratique (astuce)? (si elle n'existe pas)
0
Alem13 Messages postés 40 Date d'inscription jeudi 6 juin 2013 Statut Membre Dernière intervention 5 juillet 2013
13 juin 2013 à 11:45
D'accord merci beaucoup.

Petite question complémentaire, est-ce que vous voyez comment renommer tous les onglets en supprimant la 2nde partie (supprimer le "-" et tout ce qu'il y a après)

Ex: l'onglet noir_chocolat devient noir

merci
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
13 juin 2013 à 11:55
Sub renommeFeuilles()
Dim sh As Worksheet, p As Long
For Each sh In Worksheets
p = InStr(sh.Name, "-")
If p > 0 Then sh.Name = Split(sh.Name, "-")(1)
Next sh
End Sub
0
Alem13 Messages postés 40 Date d'inscription jeudi 6 juin 2013 Statut Membre Dernière intervention 5 juillet 2013
13 juin 2013 à 12:01
en fait la noir_chocolat devient chocolat, je voudrais juste qu'il devienne noir :)

merci
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
13 juin 2013 à 12:03
ah ok, ce n'est plus une inversion.
If p > 0 Then sh.Name = Split(sh.Name, "-")(0)
0
Alem13 Messages postés 40 Date d'inscription jeudi 6 juin 2013 Statut Membre Dernière intervention 5 juillet 2013
13 juin 2013 à 13:54
Super, c'est géant, merci!

Les chocolats Wonka vous remercient!
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
13 juin 2013 à 14:33
Chocolats ? je laisse mon adresse où ?
0