Bonjour,
après deux ans d'interruption excellistiques, et pas de progrès entre temps, hélas, me rewalou avec un problème de débutante (toujours...) !
Dans le fichier de planning ci joint, (allégé de 9 onglets-mois), j'ai deux bouts de code accolés pour le rafraichissement annuel des noms d'onglets. Que voici :
Private Sub Workbook_Open()
'Sub RenommeOnglets/Y3
Dim Feuille As Worksheet, Boucle As Long
Boucle = 1
For Each Feuille In Worksheets
Feuille.Name = Sheets(1).Range("Y3").Value & Boucle
Boucle = (Boucle + 1)
Next Feuille
For Each Feuille In Worksheets
Feuille.Name = Feuille.Range("Y3").Value
Next Feuille
End Sub
Problème numéro 1 : cette macro se déclenche à l'événement "open", ou à l'execution directe, mais impossible de l'appeler, que ce soit par le biais d'une autre macro, ou, ce que je voudrais, par le biais de la fonction feuille 1, en f3 (j'avais bien sur inscrit la macro dans un module pour cette action, mais aucun effet).
Donc, la question est peut-être : que ne comprends-je pas dans l'appel d'une macro ?
Problème number 2 : l'adjonction de :
Dim Feuille As Worksheet, Boucle As Long
Boucle = 1
For Each Feuille In Worksheets
Feuille.Name = Sheets(1).Range("Y3").Value & Boucle
Boucle = (Boucle + 1)
Next Feuille
n'est là que pour permettre l'exécution complète de :
"For Each Feuille In Worksheets
Feuille.Name = Feuille.Range("Y3").Value
Next Feuille"
qui, employé seul, s'arréte au premier onglet-doublon rencontré (par exemple, l'onglet fraichement renommé est identique au suivant, non encore renommé)
Y aurait-il un moyen plus simple (et rapide car le double renommage prend double de temps, du coup) de contourner ce problème ?
Merci à ce forum d'exister, même quand je ne fais pas de demande directe, je solutionne la plupart de mes problèmes grace à vous !
après deux ans d'interruption excellistiques, et pas de progrès entre temps, hélas, me rewalou avec un problème de débutante (toujours...) !
Dans le fichier de planning ci joint, (allégé de 9 onglets-mois), j'ai deux bouts de code accolés pour le rafraichissement annuel des noms d'onglets. Que voici :
Private Sub Workbook_Open()
'Sub RenommeOnglets/Y3
Dim Feuille As Worksheet, Boucle As Long
Boucle = 1
For Each Feuille In Worksheets
Feuille.Name = Sheets(1).Range("Y3").Value & Boucle
Boucle = (Boucle + 1)
Next Feuille
For Each Feuille In Worksheets
Feuille.Name = Feuille.Range("Y3").Value
Next Feuille
End Sub
Problème numéro 1 : cette macro se déclenche à l'événement "open", ou à l'execution directe, mais impossible de l'appeler, que ce soit par le biais d'une autre macro, ou, ce que je voudrais, par le biais de la fonction feuille 1, en f3 (j'avais bien sur inscrit la macro dans un module pour cette action, mais aucun effet).
Donc, la question est peut-être : que ne comprends-je pas dans l'appel d'une macro ?
Problème number 2 : l'adjonction de :
Dim Feuille As Worksheet, Boucle As Long
Boucle = 1
For Each Feuille In Worksheets
Feuille.Name = Sheets(1).Range("Y3").Value & Boucle
Boucle = (Boucle + 1)
Next Feuille
n'est là que pour permettre l'exécution complète de :
"For Each Feuille In Worksheets
Feuille.Name = Feuille.Range("Y3").Value
Next Feuille"
qui, employé seul, s'arréte au premier onglet-doublon rencontré (par exemple, l'onglet fraichement renommé est identique au suivant, non encore renommé)
Y aurait-il un moyen plus simple (et rapide car le double renommage prend double de temps, du coup) de contourner ce problème ?
Merci à ce forum d'exister, même quand je ne fais pas de demande directe, je solutionne la plupart de mes problèmes grace à vous !
Pièces jointes
Dernière édition: