Renommer feuilles - Indices des macro
TotoJP
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
Maurice -
Maurice -
Bonjour,
Mes macros utilisent des noms de feuilles comme références.
Est-il possible de renommer les feuilles tout en changeant automatiquement ce nom dans les macros (VBA)
Merci de bien vouloir éclairer ma lanterne
Mes macros utilisent des noms de feuilles comme références.
Est-il possible de renommer les feuilles tout en changeant automatiquement ce nom dans les macros (VBA)
Merci de bien vouloir éclairer ma lanterne
A voir également:
- Renommer feuilles - Indices des macro
- Renommer des fichiers en masse - Guide
- Comment faire un livret avec des feuilles a4 - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Renommer iphone - Guide
- Bruler des feuilles de laurier - Guide
8 réponses
Bonjour,
Le mieux serait de renommer avec le nom de la Feuille correspondante: Feuil1, Feuil2 etc.
comme cela tu n'aurais plus de problème de renommage d'onglet
Pour renommer dans les modules:
Tu vas dans le ruban et tu cliques sur Rechercher (les jumelles)
Tu saisies le nom de l'onglet à renommer.
Tu coches : Projet en cours.
A droite tu cliques sur Remplacer
En haut tu saisies dans Remplacer par: la feuille correspondante à ton onglet Feuil1 par ex
Et tu cliques sur Remplacer tout
Tu fais de même pour tous tes onglets
A l'avenir tu te serviras du nom des Feuilles, cela t'éviteras ce désagrément
Le mieux serait de renommer avec le nom de la Feuille correspondante: Feuil1, Feuil2 etc.
comme cela tu n'aurais plus de problème de renommage d'onglet
Pour renommer dans les modules:
Tu vas dans le ruban et tu cliques sur Rechercher (les jumelles)
Tu saisies le nom de l'onglet à renommer.
Tu coches : Projet en cours.
A droite tu cliques sur Remplacer
En haut tu saisies dans Remplacer par: la feuille correspondante à ton onglet Feuil1 par ex
Et tu cliques sur Remplacer tout
Tu fais de même pour tous tes onglets
A l'avenir tu te serviras du nom des Feuilles, cela t'éviteras ce désagrément
Bonjour
Il faut dega changer tes macro par le CodeName
apres tu est tranquil tu peux changer comme tu veux tes nom d'onglet
A+
Maurice
Il faut dega changer tes macro par le CodeName
apres tu est tranquil tu peux changer comme tu veux tes nom d'onglet
A+
Maurice
Re bonjour
Mon fichier est sur:
https://www.cjoint.com/?0BphUts6a9I
Les feuilles à renommer par l'utilisateur sont celles de a à y
Merci et bonne St Valentin
Mon fichier est sur:
https://www.cjoint.com/?0BphUts6a9I
Les feuilles à renommer par l'utilisateur sont celles de a à y
Merci et bonne St Valentin
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Voila un model de tri sur 2 feuille sans les nom de feuille
A tester bien sur avec des donner
A+
Maurice
Voila un model de tri sur 2 feuille sans les nom de feuille
Sub TriEntreesSorties() ' ' TriEntreesSorties Macro ' Onglet = Array(Feuil2.Name, Feuil23.Name) For X = 0 To 1 Sheets(Onglet(X)).Select Nlig = Range("A" & Rows.Count).End(xlUp).Row If Nlig > 4 Then Rows("4:" & Nlig).Select ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Clear ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Add Key:=Range("A4"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets(Onglet).Sort .SetRange Range("A4:AZ" & Nlig) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End If Range("A4").Select Next Sheets(Onglet(0)).Select End Sub
A tester bien sur avec des donner
A+
Maurice
Re
Hum j'ais fait un Bug voila la modife
A+
Maurice
Hum j'ais fait un Bug voila la modife
Sub TriEntreesSorties() ' ' TriEntreesSorties Macro ' Onglet = Array(Feuil2.Name, Feuil23.Name) For X = 0 To 1 Sheets(Onglet(X)).Select Nlig = Range("A" & Rows.Count).End(xlUp).Row If Nlig > 4 Then Rows("4:" & Nlig).Select ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Clear ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Add Key:=Range("A4"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets(Onglet(X)).Sort .SetRange Range("A4:AZ" & Nlig) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End If Range("A4").Select Next Sheets(Onglet(0)).Select End Sub
A+
Maurice
Merci, Maurice,
Ton programme fonctionne parfaitement pour x = 0 et 1, mais quand je veux trier plus de feuilles, à partir de x=2, il bug à la ligne 7 ( Sheets(Onglet(X)).Select) avec l'erreur 9: "L'indice n'appartient pas à la sélection"
C'est probablement facile à résoudre, mais pour un débutant comme moi en vba...
@+
Ton programme fonctionne parfaitement pour x = 0 et 1, mais quand je veux trier plus de feuilles, à partir de x=2, il bug à la ligne 7 ( Sheets(Onglet(X)).Select) avec l'erreur 9: "L'indice n'appartient pas à la sélection"
C'est probablement facile à résoudre, mais pour un débutant comme moi en vba...
@+
Bonjour
tu peux mettre ta macro pour voir ou tu a fait une blaque
voila un autre macro regarde bien
A+
Maurice
tu peux mettre ta macro pour voir ou tu a fait une blaque
voila un autre macro regarde bien
Sub testTri() Dim Onglet(2) As String Onglet(0) = Feuil2.Name Onglet(1) = Feuil1.Name Onglet(2) = Feuil23.Name For X = LBound(Onglet) To UBound(Onglet) Sheets(Onglet(X)).Select Nlig = Range("A" & Rows.Count).End(xlUp).Row If Nlig > 4 Then Rows("4:" & Nlig).Select ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Clear ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Add Key:=Range("A4"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets(Onglet(X)).Sort .SetRange Range("A4:AZ" & Nlig) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End If Range("A4").Select Next Sheets(Feuil2.Name).Select End Sub Sub textTriAlpha() Dim Onglet(24) As String Onglet(0) = Feuil3.Name Onglet(1) = Feuil4.Name Onglet(2) = Feuil5.Name Onglet(3) = Feuil6.Name Onglet(4) = Feuil7.Name Onglet(5) = Feuil8.Name Onglet(6) = Feuil9.Name Onglet(7) = Feuil10.Name Onglet(8) = Feuil11.Name Onglet(9) = Feuil12.Name Onglet(10) = Feuil13.Name Onglet(11) = Feuil14.Name Onglet(12) = Feuil15.Name Onglet(13) = Feuil16.Name Onglet(14) = Feuil17.Name Onglet(15) = Feuil18.Name Onglet(16) = Feuil19.Name Onglet(17) = Feuil20.Name Onglet(18) = Feuil21.Name Onglet(19) = Feuil22.Name Onglet(20) = Feuil24.Name Onglet(21) = Feuil25.Name Onglet(22) = Feuil26.Name Onglet(23) = Feuil27.Name Onglet(24) = Feuil28.Name For X = LBound(Onglet) To UBound(Onglet) Sheets(Onglet(X)).Select Nlig = Range("A" & Rows.Count).End(xlUp).Row If Nlig > 4 Then Rows("4:" & Nlig).Select ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Clear ActiveWorkbook.Worksheets(Onglet(X)).Sort.SortFields.Add Key:=Range("A4"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets(Onglet(X)).Sort .SetRange Range("A4:AZ" & Nlig) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End If Range("A4").Select Next Sheets(Feuil2.Name).Select End Sub
A+
Maurice
Merci pout l'info correcte, mais mon problème est plus délicat: Je souhaite que ce soit l'utilisateur ambda (et pas moi!) qui puisse renommer les feuilles comme il le souhaite. @+