Bonjour
Dans ce code, j'ai placé des Unprotect ainsi que de Protect
Il bloque lors de la sélection des feuilles
Sur ce feuilles aussi se trouve des Protect et Unprotect
Quelqu'un aurait il une idée de comment je pourrais faire ?
Merci
Dans ce code, j'ai placé des Unprotect ainsi que de Protect
VB:
Option Explicit
Private Sub ComboBox1_Change()
End Sub
Private Sub CommandButton2_Click()
ActiveSheet.Unprotect
Unload Me
ActiveSheet.Protect
End Sub
Private Sub CommandButton3_Click()
ActiveSheet.Unprotect
Dim Choix%, ReponseIndem%, ReponseTP%
Dim fselection()
Dim TpsPart As Boolean
Dim Motif$
Choix = ComboBox1.ListIndex 'renvoie le choix sélectionné
'DEFINIT LES FEUILLES A IMPRIMER SELON LE CHOIX SELECTIONNE DANS USERFORM
Select Case Choix
'CHOIX INDEMNITE
Case 0
fselection = Array("Indemnités", "salariés") 'FEUILLES A IMPRIMER (A ADAPTER!)
ReponseTP = MsgBox("Le salarié avait-il une période à temps partiel ?", vbYesNo, "Temps partiel") 'msg temps partiel
Select Case ReponseTP
Case vbNo: TpsPart = False 'si reponse non, variable TpsPart = faux
Case vbYes: TpsPart = True 'si reponse oui, TpsPart = vrai
Case Else: MsgBox "Procédure annulée !", , "Annulation": Exit Sub 'sinon, sortie procedure
End Select
'CHOIX ENVOI SIMULATION
Case 1
fselection = Array("Simulations") 'feuille à imprimer
'CHOIX DOSSIER COMPLET
Case 2
ReponseIndem = MsgBox("AVEZ-VOUS CALCULE UNE INDEMNITE DE RUPTURE ?", vbYesNo, "Indemnités") 'msg indemnités
Select Case ReponseIndem
Case vbNo: fselection = Array("salariés", "DSN", "CP", "Courriers", "ES", "Asaisir") 'A ADAPTER (ici, sans "Indemnités" !!!) 'si non, feuilles sans "Indemn"
Case vbYes
fselection = Array("salariés", "Indemnités", "DSN", "CP", "Courriers", "ES", "Asaisir") 'si oui, feuilles avec "Indemn" PUIS :
ReponseTP = MsgBox("Le salarié avait-il une période à temps partiel ?", vbYesNo, "Temps partiel") 'msg TP
Select Case ReponseTP
Case vbNo: TpsPart = False 'voir cas 0
Case vbYes: TpsPart = True
Case Else: MsgBox "Procédure annulée !", , "Annulation": Exit Sub
End Select
Case Else: MsgBox "Procédure annulée !", , "Annulation": Exit Sub
End Select
'CHOIX COURRIERS STC
Case 3
fselection = Array("Courriers") 'feuille à imprimer
'LISTE LAISSEE VIDE
Case Else
MsgBox "Procédure annulée, aucune donnée n'est renseignée!", vbCritical, "Erreur de sélection"
Exit Sub 'sortie procédure
End Select
'EXECUTION DE LA MACRO EditionPDF (qui dépend du choix temps partiel)
Call EditionPDF(fselection, TpsPart) 'exécution EditionPDF (en fonction de fselection et de TpsPart)
'----------------LIGNES AJOUTEES------------------------
'-------------------------------------------------------
'-------------------------------------------------------
'ENVOI DU MAIL SOUS CONDITIONS
If Choix = 0 Then Call ChoixMultiFichiers_EnvoiMail_Simu_RG 'envoi mail sans condition si choix 0
If Choix = 1 Then Call ChoixMultiFichiers_EnvoiMail_SimuRH 'envoi mail sans condition si choix 1
If Choix = 2 Then 'si choix 2
Motif = Join(Array("Licenciement Faute Grave", "Licenciement Autres", "Retraite", "Rupture Conventionnelle"))
If InStr(Motif, Sheets("Salariés").Range("D18").Value) > 0 Or Sheets("Courriers").Range("E74").Value > 15000 Then
'si la cellule D18 de la feuille Salariés est = "Licenciement Faute Grave", "Licenciement Autres", "Retraite", "Rupture Conventionnelle" ou que la cellule E74 de la feuille Courriers est > à 15 000
Call ChoixMultiFichiers_EnvoiMail_ValidSTC 'alors envoi systématique du mail via code ci-dessous
End If
End If
'-------------------------------------------------------
'-------------------------------------------------------
'-------------------------------------------------------
'MSG POUR CONTINUER SUR UF OU FERMER
If Not MsgBox("Souhaitez-vous effectuer une autre action ?", vbYesNo, "Demande de confirmation") = vbYes Then 'si continuer non, on ferme
Unload Me
Exit Sub
End If
ComboBox1.ListIndex = -1 'si continuer oui, on définit la liste sur valeur vide
ActiveSheet.Protect
End Sub
Private Sub UserForm_Initialize()
ActiveSheet.Unprotect
With Me.ComboBox1
.AddItem "Validation Simulation indemnités de rupture"
.AddItem "Envoi Simulation à la RH"
.AddItem "Enregistrer mon dossier complet"
.AddItem "Générer les courriers du STC"
End With
ActiveSheet.Protect
End Sub
Il bloque lors de la sélection des feuilles
Sur ce feuilles aussi se trouve des Protect et Unprotect
Quelqu'un aurait il une idée de comment je pourrais faire ?
Merci