Problème avec Boucle [Résolu]

Signaler
Messages postés
37
Date d'inscription
jeudi 5 décembre 2019
Statut
Membre
Dernière intervention
4 octobre 2020
-
Messages postés
37
Date d'inscription
jeudi 5 décembre 2019
Statut
Membre
Dernière intervention
4 octobre 2020
-
bonjour
je rencontre une difficulté que je n'arrive pas à résoudre.
voici le code

Sub VerifierLesRames()
Dim sh As Worksheet: Dim c As Range

For Each c In Feuil3.Range("F1:F14")
If c = "" Then Exit Sub
For Each sh In Worksheets
With sh
If .Range("A1").Value = .Name And .Range("B1").Value = "PARTIE" Then
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True

ElseIf .Name = c Then
c = ""
Else

With Sheets.Add
.Name = c
.Tab.ColorIndex = 6
.Range("A1") = c
With [A1].Font
.Name = "Cambria"
.Size = 24
.Bold = True
End With
With [A1]
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.EntireColumn.AutoFit
End With
End With
End If
End With
Next sh
Next c
End Sub

ce que je souhaite, c'est de pouvoir vérifier les onglets existants par rapport à la liste en Feuil3.Range("F1:F14"). Puis si elles existent de les supprimer dans la liste en Feuil3, pour ensuite créer les feuille selon les valeurs restantes.

je vous mets le lien du fichier:
https://mon-partage.fr/f/DcVEbNCj/
Merci d'avance.

2 réponses

Messages postés
16612
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
17 octobre 2020
9 816
Bonjour

Tu fais des boucles de boucles un peu bizarre quand même.

J'ai pas tout compris ce que tu veux faire si la feuille existe, mais bon déjà pour tester si la feuille existe, mieux vaut une fonction à part, ce qui donne :

Sub VerifierLesRames()

Dim c As Range, Nom As String
For Each c In Feuil3.Range("F1:F14").Cells
Nom = c.Value
If c <> "" Then
If Existe(Nom) Then
'action si la feuille existe
Else
'action si la feuille n'existe pas
End If
End If
Next
End Sub



Function Existe(F) As Boolean
On Error Resume Next
Existe = Sheets(F).Index
End Function


m@rina


Messages postés
37
Date d'inscription
jeudi 5 décembre 2019
Statut
Membre
Dernière intervention
4 octobre 2020

Bonjour merci pour l'aide. J'ai revu tout cela et ça fonctionne super bien. J'ai séparé les différentes actions.