Rapport de message :*
 

Re: Appels de procédures et portée de variables

Titre du sujet : Re: Appels de procédures et portée de variables
par dss le 19/01/2008 15:16:48

Bonjour Didier, le forum,


Pour compléter mon tableau et pendre en compte la possibilité d’annulation d’un transport, j’ai ajouté à mon tableau 2 colonnes R et S : la première tant égal à «Transport annulé» et la seconde portant la date de l’annulation. J'ai repris tes conseils et utilisé la macro suivante :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lig As Long
lig = Target.Row
Const Mot2 As String = "y"
If Target.Count > 1 Then Exit Sub
If Not Application.Intersect(Target, Columns(18)) Is Nothing Then
If Target.Offset(0, -1).Value = "enregistré" Then
InputBox ("Mot de passe, Svp")
If Mot2 = "y" Then Target.Value = "Transport annulé"
If cells(lig, 18).Value = "Transport annulé" Then cells(lig, 19).Value = Now
End If
End If

Par ailleurs, j’ai d’une part, déprotégé les cellules des colonnes R et S.

Cependant, après bien des tentatives, je n’arrive pas à résoudre plusieurs difficultés: protéger la saisie en colonne R hors doubleclick , empêcher de pouvoir supprimer les données saisies à l’aide de la touche « Suppr », et libérer la plage de réservation du véhicule précédemment réservée.

1- J’aurais besoin de protéger l’accès à la saisie des cellules de la colonne R par un mot de passe réservé à 2 personnes dès qu’on essaie de saisir à l’intérieur d’une cellule de la colonne R. Attention, la saisie sera effectuée après que la ligne ait déjà été enregistrée et protégée (colonne A à R).
2- J’ai réussi à protéger l’accès en utilisant la même procédure avec SelectionChange mais compte tenu de tes remarques précédentes, est ce une bonne solution pour une solution viable à long terme ?
3- Empêcher d’autres utilisateurs ne disposant pas du mot de passe de pouvoir supprimer les données saisies en colonne R et S.
4- Libérer la plage de réservation du véhicule si le transport est annulé.


Merci par avance de ton aide.

Cordialement

dss