cedric0715
Messages postés210Date d'inscriptionmercredi 25 février 2015StatutMembreDernière intervention 6 mai 2018
-
28 nov. 2016 à 10:51
f894009
Messages postés17209Date d'inscriptiondimanche 25 novembre 2007StatutMembreDernière intervention20 décembre 2024
-
28 nov. 2016 à 15:01
Bonjour,
j'ai deux éléments a amélioré en via dans mon tableau
les donné de ma feuille "tableau recap sont le résultat de mon "userformpri" qui n est pas proteger ,mais des lors que je la protège mon spin button ne fonctionne pas trouvez le code si dessous
'enregistrement et protection blocage des donnees'
Private Sub CommandButton1_Click() Dim l_info As Integer Dim note_1 As String, note_2 As String, lanote As String Dim Ws As Worksheet
With ThisWorkbook.Worksheets("TABLEAU RECAP") l_info = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
.Range("B" & l_info).Value = ComEQUI 'libelle equipement' .Range("c" & l_info).Value = Textlocal 'code local" .Range("D" & l_info).Value = ComRESP 'Nom du responsable' .Range("E" & l_info).Value = CDate(TextDATEAM) 'date du constat' .Range("F" & l_info).Value = CDate(TextMISE) 'date de mise en service' .Range("G" & l_info).Value = CInt(TextDUREVIE.Value) 'Duree de vie theorique' .Range("H" & l_info).Value = CDate(TextREMPL) 'Date theorique de remplacement ' .Range("I" & l_info).Value = CInt(TextDURVIERESI.Value) 'Duree de vie residuelle ' .Range("J" & l_info).Value = TextESTIMREMPL 'Duree de vie residuelle ' .Range("K" & l_info).Value = CInt(TextRESUETAT.Value) 'note de etat equipement' .Range("l" & l_info).Value = CInt(TextRESUCRIT.Value) 'note de criticite equipement'
With .Range("M" & l_info) 'formulation .FormulaR1C1 = "=IF(RC[-2]<=21,""Mauvais"",IF(RC[-2]<=43,""Usuel"",IF(RC[-2]<=64,""Bon"")))" 'équivaut à un collage spécial valeur .Value = .Value note_1 = .Value End With
With .Range("N" & l_info) 'formulation .FormulaR1C1 = "=IF(RC[-2]<=21,""Faible"",IF(RC[-2]<=43,""Moyenne"",IF(RC[-2]<=64,""Forte"")))" 'équivaut à un collage spécial valeur .Value = .Value note_2 = .Value End With
Select Case True Case note_1 = "Mauvais" And note_2 = "Faible" lanote = "B" Case note_1 = "Mauvais" And note_2 = "Moyenne" lanote = "C" Case note_1 = "Mauvais" And note_2 = "Forte" lanote = "C"
Case note_1 = "Usuel" And note_2 = "Faible" lanote = "A" Case note_1 = "Usuel" And note_2 = "Moyenne" lanote = "B" Case note_1 = "Usuel" And note_2 = "Forte" lanote = "B"
Case note_1 = "Bon" And note_2 = "Faible" lanote = "A" Case note_1 = "Bon" And note_2 = "Moyenne" lanote = "A" Case note_1 = "Bon" And note_2 = "Forte" lanote = "A"
Private Sub TextDATEAM_Change() 'Code permettant de mettre une date au format 00/00/0000 dans une textbox Dim valeur As Byte TextDATEAM.MaxLength = 10 'nb caractères maxi autorisé dans le textbox valeur = Len(TextDATEAM) If valeur = 2 Or valeur = 5 Then TextDATEAM = TextDATEAM & "/"
End Sub
'format date de mise en service'
Private Sub Textmise_Change() 'Code permettant de mettre une date au format 00/00/0000 dans une textbox Dim valeur As Byte TextMISE.MaxLength = 10 'nb caractères maxi autorisé dans le textbox valeur = Len(TextMISE) If valeur = 2 Or valeur = 5 Then TextMISE = TextMISE & "/"
End Sub
'format date fin de vie'
Private Sub Textfinvie_Change() 'Code permettant de mettre une date au format 00/00/0000 dans une textbox Dim valeur As Byte TextFINVIE.MaxLength = 10 'nb caractères maxi autorisé dans le textbox valeur = Len(TextFINVIE) If valeur = 2 Or valeur = 5 Then TextFINVIE = TextFINVIE & "/" End Sub
'format date de mise en service'
Private Sub TextREMPL_Change() 'Code permettant de mettre une date au format 00/00/0000 dans une textbox Dim valeur As Byte TextREMPL.MaxLength = 10 'nb caractères maxi autorisé dans le textbox valeur = Len(TextREMPL) If valeur = 2 Or valeur = 5 Then TextREMPL = TextREMPL & "/"
End Sub
Private Sub SpinButton21_Change() With ActiveSheet On Error Resume Next If .FilterMode Then .ShowAllData On Error GoTo 0 Range("A7:P7").AutoFilter .Range("A7:P" & .Cells(Rows.Count, "E").End(xlUp).Row).AutoFilter Field:=5, Operator:= _ xlFilterValues, Criteria2:=Array(0, DateValue("01/01/" & SpinButton21.Value)) End With End Sub Public Sub Affiche_tout() ActiveSheet.Range("A7:P7").AutoFilter End Sub
Private Sub SpinButton21_GotFocus() With Me.SpinButton21 .LinkedCell = Range("M2").Address .SmallChange = 1 .Max = 2025 .Min = 2015 .PrintObject = False End With End Sub
pouvez vous m'aider sur ce sujet ,je voudrais que la feuille soit protéger en ecriture avec un mot de passe et que lorsque je change la date avec mon spinbutton cela ne me demande pas de "oter la protection"
de plus dans le tableau recap je voudrais que pour le mémé équipement sur l annee 2016 ou 2017 ou 2018 etc.. la note ne soit pas supérieur a l’année 2015ou autre sauf si l’équipement a été change "voir une case que je rajouterai dans mon userform "equipement changement"
cela mettra un message que c'est impossible et donc revient sur l'userform pour re-remplir.