Private Function Trouver_Utilisateur$()
Dim Compte_Utilisateur As Object
On Error Resume Next
Set Compte_Utilisateur = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2:Win32_UserAccount.Domain='" & Environ("userdomain") & "',Name='" & Environ("username") & "'")
If Err = 0 Then Trouver_Utilisateur = Compte_Utilisateur.FullName Else Trouver_Utilisateur = "Utilisateur inconnu"
End Function
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cellule_en_Cours As Range
If Not Intersect(Target, Range("E23:G999")) Is Nothing Then
For Each Cellule_en_Cours In Intersect(Target, Range("E23:G999"))
If Not (Range("E" & Cellule_en_Cours.Row) = "" Or Range("F" & Cellule_en_Cours.Row) = "" Or Range("G" & Cellule_en_Cours.Row) = "") Then
With Range("H" & Cellule_en_Cours.Row)
If (Not .Value = "#N/A" And (.Value < Range("G5").Value Or .Value > Range("D5").Value)) Or Not .Offset(0, 5).Value = "" Then
Do
.Offset(0, 5).Value = InputBox(Prompt:="Entrez un commentaire pour la valeur " & .Offset(0, -7).Value, Default:=.Offset(0, 5).Value)
Loop Until (Not .Offset(0, 5).Value = "" And Not .Offset(0, 5).Value = "FAUX") Or (.Value >= Range("G5").Value And .Value <= Range("D5").Value)
.Offset(0, 8).Value = Trouver_Utilisateur
End If
End With
End If
Next Cellule_en_Cours
End If
If Not Intersect(Target, Range("I23:K999")) Is Nothing Then
For Each Cellule_en_Cours In Intersect(Target, Range("I23:K999"))
If Not (Range("I" & Cellule_en_Cours.Row) = "" Or Range("J" & Cellule_en_Cours.Row) = "" Or Range("K" & Cellule_en_Cours.Row) = "") Then
With Range("L" & Cellule_en_Cours.Row)
If (Not .Value = "" And (.Value < Range("N5").Value Or .Value > Range("K5").Value)) Or Not .Offset(0, 1).Value = "" Then
Do
.Offset(0, 1).Value = InputBox(Prompt:="Entrez un commentaire pour la valeur " & .Offset(0, -11).Value, Default:=.Offset(0, 1).Value)
Loop Until (Not .Offset(0, 1).Value = "" And Not .Offset(0, 1).Value = "FAUX") Or (.Value >= Range("N5").Value And .Value <= Range("K5").Value)
.Offset(0, 4).Value = Trouver_Utilisateur
End If
End With
End If
Next Cellule_en_Cours
End If
End Sub