Changer nom onglet vba avec condition

Résolu
89ric Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
89ric Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je cherche vainement à faire fonctionner ma macro me permettant de changer le nom de certains onglets d'un classeur excel suivant une liste établie dans une feuille "saisie" mais en cherchant les doublons.
Ma méthodes doit fonctionner mais je ne sais pas où ca bug.
Pouvez-vous m'aider?
Merci!

Sub NomFeuille()

Dim j, k As Integer

On Error Resume Next

For j = 1 To 32
If Not IsEmpty(Sheets("Saisie").Range("B" & j + 2)) Then
For k = j To 31
If Sheets("Saisie").Range("B" & j + 2) = Sheets("Saisie").Range("B" & k + 3) Then
Worksheets(j + 14).Name = Worksheets(j + 14).Range("A2") & Worksheets(j + 14).Range("C2") And Worksheets(k + 15).Name = Worksheets(k + 15).Range("A2") & Worksheets(k + 15).Range("C2")
End If
Next k
Worksheets(j + 14).Name = Worksheets(j + 14).Range("A2")

Else: Worksheets(j + 14).Name = Worksheets("Saisie").Range("B2") & j
End If
Next j

On Error GoTo 0
'Fin de la macro
End Sub

A voir également:

3 réponses

pilas31 Messages postés 1825 Date d'inscription   Statut Contributeur Dernière intervention   646
 
Bonjour,

Comme ça, à première vue, la ligne suivante semble curieuse :

Worksheets(j + 14).Name = Worksheets(j + 14).Range("A2")

Car si la liste n'est pas vide c'est cette instruction qui s'éxécute et donc la liste ne sert à rien.
Si j'ai bien compris il faut plutôt çà :

Worksheets(j + 14).Name = Worksheets("Saisie").Range("B" & j + 2)
A+
0
89ric Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour,
non celle-ci fonctionne, elle me permet de donner à la feuille le nom contenu dans la cellule A2 de celle-ci, où il y a la formule suivante (=majuscule(saisie!b5) par exemple) dans le cas où la cellule n'est pas vide et dans le cas où il n'y a pas de doublons.
Merci.
A+
0
89ric Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour, en fait j'ai trouvé (on m'a donné) un autre code qui fonctionne!
Merci d'avoir pris du temps pour moi!
0