Index automatique d'une nouvelle feuille

JibseNew

XLDnaute Nouveau
Bonjour,

Excel nomme automatiquement chaque nouvelle feuille ajoutée en ajoutant un index à Feuil (Feuil1, Feuil2, etc.). Si l'on ajoute une feuille puis qu'on la supprime, Excel n'utilisera pas l'index de cette feuille (comme s'il n'était plus disponible). J'aimerais qu'il n'en soit pas ainsi. Comment faire ? Merci.
 

Pierrot93

XLDnaute Barbatruc
Re : Index automatique d'une nouvelle feuille

Bonjour,

essaye ceci, à placer dans le module "thisworkbook" :
Code:
Option Explicit
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Dim n As String, i As Byte
For i = 1 To Sheets.Count
    If FeuilleExiste("Feuil" & i) Is Nothing Then Sh.Name = "Feuil" & i: Exit For
Next i
End Sub
Function FeuilleExiste(f As String) As Worksheet
On Error Resume Next
Set FeuilleExiste = Worksheets(f)
End Function

bonne journée
@+
 

JibseNew

XLDnaute Nouveau
Re : Index automatique d'une nouvelle feuille

Merci Pierrot93,

Ta macro marche, mais en fait, je voulais maîtriser cela à l'intérieur d'une macro complémentaire, sans avoir à ajouter du code dans le classeur actif. Dans ma macro, je crée une feuille (sans lui donner un nom, donc Excel la nomme par exemple Feuil5) pour un usage temporaire puis je la détruis. J'aimerais que, après avoir quitté la macro, Excel utilise l'index 5 (dans mon exemple) lorsque l'on ajoute une nouvelle feuille.
 

JibseNew

XLDnaute Nouveau
Re : Index automatique d'une nouvelle feuille

Merci Pierrot93,

Je ne connais pas trop les modules de classe, mais je vais faire un effort. Je pensais toutefois qu'il pouvait y avoir un moyen simple de remettre le compteur d'Excel à la position antérieure.
 

Pierrot93

XLDnaute Barbatruc
Re : Index automatique d'une nouvelle feuille

Re,

Je pensais toutefois qu'il pouvait y avoir un moyen simple de remettre le compteur d'Excel à la position antérieure.
Pas à ma connaissance, ci-joint un fichier xla dans lequel j'ai placé et adapté le code ...
 

Pièces jointes

  • classeur2.zip
    6.6 KB · Affichages: 13
  • classeur2.zip
    6.6 KB · Affichages: 22
  • classeur2.zip
    6.6 KB · Affichages: 21

JibseNew

XLDnaute Nouveau
Re : Index automatique d'une nouvelle feuille

@Pierrot93

Grand merci, ça marche à merveille. Mais, dis-moi, compte tenu du fait que ma macro complémentaire comporte une dizaine d'outils et que ce problème d'index ne concerne qu'une amélioration secondaire d'un seul outil, y a-t-il un inconvénient à créer spécialement un module de classe ? Merci encore.
 

JibseNew

XLDnaute Nouveau
Re : Index automatique d'une nouvelle feuille

@Pierrot,

Je pensais que ça ne fonctionnerait que lorsque je solliciterais la macro complémentaire (un des outils), mais il suffit qu'elle soit chargée pour que ça marche, ce qui un peu ennuyeux. Je vais donc continuer mes recherches. Si je trouve, je reviens.
 

Pierrot93

XLDnaute Barbatruc
Re : Index automatique d'une nouvelle feuille

Re,

Je pensais que ça ne fonctionnerait que lorsque je solliciterais la macro complémentaire (un des outils), mais il suffit qu'elle soit chargée pour que ça marche,
c'est pas ce que tu voulais.... Sinon peut être faire un test sur le nom du / des classeur(s) sur le(s)quel(s) aplliquer le code...
 

JibseNew

XLDnaute Nouveau
Re : Index automatique d'une nouvelle feuille

Re,

Je voulais que ça ne fonctionne qu'une fois après l'utilisation de mon outil. Lorsqu'on quitte l'outil, si l'on ajoute une feuille, elle pourrait automatiquement être nommée Feuil67, ce qui peut perturber celui qui ne connaît pas ma macro (je la distribue dans un ministère). J'ai bien pensé à ta solution (un test), mais ça m'ennuie un peu que l'évènement soit capté à chaque fois (il peut y avoir des inconvénients avec d'autres macros par exemple, non ?).
 

JibseNew

XLDnaute Nouveau
Re : Index automatique d'une nouvelle feuille

Re,

Oui, c'est ce que j'ai fait, mais imagine un utilisateur de ma macro qui n'en connaît pas cette implication et qui ouvre une nouvelle feuille. Il pourrait s'inquiéter de constater qu'il ouvre une 67e feuille.
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 183
dernier inscrit
karelhu35