Interdire supp onglets suivant cellule...

roby

XLDnaute Occasionnel
Bonjour le Forum

Après plusieurs recherches sur les forums pour trouver une solution adaptée à mon problème. je me tourne vers vous.

2 petites questions qui sont complémentaires malgré tout.

*** J'aimerais que l'on ne puisse pas effacer les onglets nommés A1 A2 A3 ... (pour l'exemple) si dans la colonne S (user 2) de Listing la cellule est vide, sachant aussi que l'onglet Listing est caché pour des raisons évidentes à mes yeux..

Seuls les onglets Nom et prenom sont visibles.

*** et comment peut-on interdire de fermer l'application avec la croix en haut à droite de la fenetre. si un bouton est présent sur la feuille qui sauve et quitte.

Merci d'avance pour les solutions apportées.

Roby @+
 

Pièces jointes

  • Roby(A).zip
    49.6 KB · Affichages: 39

roby

XLDnaute Occasionnel
Re : Interdire supp onglets suivant cellule...

Bonsoir le Forum

Je reviens vers vous car après adaptation des codes sur le fichier prévu, des erreurs apparaissent.

A savoir: le code VBA est protégé par MDP (peut être un indice).

Les codes récupérés proviennent du fichier Post 11 qui pourtant fonctionne très bien.

Sur le nouveau fichier adapté (trop volumineux et confidentiel) les messages suivants apparaissent:

1) A l'ouverture ou fermeture du fichier: Erreur de compilation dans le module caché: Mod_Warning

2) Si l'éditeur VBA est actif: Type défini par l'utilisateur non défini

code suivant surligné:

Sub ModifierSupprimerFeuille() <------------------------
Dim c As CommandBarControl <------------------------
For Each c In Application.CommandBars.FindControls(ID:=847)
c.OnAction = "SupFeuil"
Next c
End Sub


Sub SupFeuil()
Dim NomFeuille As String
Dim Msg, Style, Title As String
Dim I, Fin As Long
Fin = Sheets("ListIng").Range("A" & Rows.Count).End(xlUp).Row
Style = vbOKOnly ' Définit les boutons.
Title = "Avertissement ..." ' Définit le titre.
NomFeuille = ActiveSheet.Name
Select Case NomFeuille
Case "Listing"
Exit Sub
Case Else
For I = 2 To Fin
If Sheets("ListIng").Cells(I, 7) = NomFeuille And Sheets("ListIng").Cells(I, 19) = "" Then
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
End If
Next I
End Select
End Sub


Sub RetablirSupprimerFeuille() <------------------------
Dim c As CommandBarControl <------------------------
For Each c In Application.CommandBars.FindControls(ID:=847)
c.OnAction = ""
Next c
End Sub

D'où pourrait venir l'erreur

Merci pour vos Solutions.
 

systmd

XLDnaute Occasionnel
Re : Interdire supp onglets suivant cellule...

Bonjour Roby

I faudrait quand même nous envoyé un bout de ton fichier épurer, bien sûr, des données confidentielles,
car même avec la protection du VBA je n'arrive pas à reproduire l'erreur.
sinon désactive les commandes que tu as rajouter une par une pour voir s'il y en pas une qui bloque.
 

Statistiques des forums

Discussions
312 204
Messages
2 086 198
Membres
103 154
dernier inscrit
jefferson6488