suppression de feuille

  • Initiateur de la discussion Initiateur de la discussion Stéph
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

Stéph

Guest
Bonjour le forum

j'ai un soucis, je souhaiterai empécher de supprimer deux feuilles nommées Data et General parmi la liste complète des feuilles dans une comboBox dans l'Userform

Voici mon code actuel:

Private Sub CommandButton10_Click()
'bouton pour supprimer l'onglet lié avec le ComboBox1

Dim Mes As String
Dim Bouton As Single
Dim Titre As String
Dim Onglet As Variant
Dim Res As Long

If UserForm1.ComboBox1.ListIndex = -1 Then Exit Sub

For Each Onglet In ActiveWorkbook.Worksheets
If Onglet.Name <> "Data" Or Onglet.Name <> "General" Then
Worksheets(Onglet).Delete

Else
'message si la feuille "Data" et/ou "General" a été sélectionné
Mes = "Il est impossible de supprimer cette Feuille"
Bouton = vbOKOnly + vbInformation
Titre = "Suppression Portefeuille"
Res = MsgBox(Mes, Bouton, Titre)

If Res = 1 Then Exit Sub
'traitement de oui

End If

Next

End Sub

Il y a surement une solution, mais je ne la trouve pas !!
Bon ap'

Steph
 
Bonjour Stéph, le forum

ton code est bon sauf la ligne
Worksheets(Onglet).Delete
onglet est une feuille donc tu dois écrire
onglet.delete
ou
Worksheets(Onglet.name).Delete

voila ton code modifié, une égalité est plus simple à lire

Private Sub CommandButton10_Click()
'bouton pour supprimer l'onglet lié avec le ComboBox1

Dim Mes As String
Dim Bouton As Single
Dim Titre As String
Dim Onglet As Worksheet
Dim Res As Long

If UserForm1.ComboBox1.ListIndex = -1 Then Exit Sub

For Each Onglet In ActiveWorkbook.Worksheets
If Onglet.Name = "Data" Or Onglet.Name = "General" Then
'message si la feuille "Data" et/ou "General" a été sélectionné
Mes = "Il est impossible de supprimer cette Feuille"
Bouton = vbOKOnly + vbInformation
Titre = "Suppression Portefeuille"
Res = MsgBox(Mes, Bouton, Titre)
If Res = 1 Then Exit Sub
'traitement de oui
Else
Onglet.Delete
End If
Next
End Sub

Cordialement, A+
 
Bonjour Yeahou , le forum
J'ai toujours un problème au niveau de ces 2 lignes

If UserForm1.ComboBox1.ListIndex = -1 Then Exit Sub
For Each Onglet In ActiveWorkbook.Worksheets

Il faut récupérer le nom de l'onglet se trouvant dans le ComboBox1
Car pour l'instant Excel me répond en disant le message de la msgBox

je redonne le code:

Private Sub CommandButton10_Click()
'bouton pour supprimer l'onglet lié avec le ComboBox1

Dim Mes As String
Dim Bouton As Single
Dim Titre As String
Dim Onglet As Worksheet
Dim Res As Long

If UserForm1.ComboBox1.ListIndex = -1 Then Exit Sub

For Each Onglet In ActiveWorkbook.Worksheets
If Onglet.Name = "Data" Or Onglet.Name = "General" Then
'message si la feuille "Data" et/ou "General" a été sélectionné
Mes = "Il est impossible de supprimer cette Feuille"
Bouton = vbOKOnly + vbInformation
Titre = "Suppression Portefeuille"
Res = MsgBox(Mes, Bouton, Titre)
If Res = 1 Then Exit Sub
'traitement de oui
Else
Onglet.Delete
End If
Next
End Sub
 
Bonjour le forum et Yeahou


J'ai trouvé mais je post mon code si ça peut aider quelqu'un d'autre !!

Private Sub CommandButton10_Click()
'bouton pour supprimer l'onglet lié avec le ComboBox1

Dim Mes As String
Dim Bouton As Single
Dim Titre As String
Dim Onglet As Variant
Dim Res As Long

If UserForm1.ComboBox1.ListIndex = -1 Then Exit Sub

If CStr(UserForm1.ComboBox1) = "Data" Or CStr(UserForm1.ComboBox1) = "General" Then

'message si la feuille "Data" et/ou "General" a été sélectionné
Mes = "Il est impossible de supprimer cette Feuille"
Bouton = vbOKOnly + vbInformation
Titre = "Suppression Portefeuille"
Res = MsgBox(Mes, Bouton, Titre)
If Res = 1 Then Exit Sub
'traitement de oui
Else

Worksheets(CStr(UserForm1.ComboBox1)).Delete
End If

End Sub

Bonne journée

Stéph
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
10
Affichages
534
Réponses
5
Affichages
715
Réponses
7
Affichages
318
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
267
Retour