Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur compilation ????

2 réponses
Avatar
Nito
Bonjour à vous tous
Pouvez-vous m'aider avec cette formule je suis débutante.
Pourquoi lorsque je l'effectue ...il est mentionné ERREUR compilation
SuB ou Function non définie
Merci pour l'aide

Private Sub Worksheet_Change(ByVal Target As Range)
temp = Application.CountA(Sheets("espion").Range("a:a")) + 1
Sheets("espion").Cells(temp, 1) = Target.Address
Sheets("espion").Cells(temp, 2) = Now
Sheets("espion").Cells(temp, 3) = Target
Sheets("espion").Cells(temp, 4) = GetUserName()
End Sub

2 réponses

Avatar
MichDenis
Cette fonction doit se situer dans un module feuille où tu veux
que l'action se déroule.

Dans un module standard copie ceci :

'Déclaration de l'api dans le haut d'un module standard
Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _
(ByVal lpBuffer As String, nSize As Long) As Long

Function FindUserName() As String
Dim strName As String
strName = Space$(512)
GetUserName strName, Len(strName)
FindUserName = Trim$(strName)
End Function


Et ta procédure dans le module feuille va devenir :

Private Sub Worksheet_Change(ByVal Target As Range)
temp = Application.CountA(Sheets("espion").Range("a:a")) + 1
Sheets("espion").Cells(temp, 1) = Target.Address
Sheets("espion").Cells(temp, 2) = Now
Sheets("espion").Cells(temp, 3) = Target
Sheets("espion").Cells(temp, 4) = FindUserName()
End Sub
Avatar
JB
Bonsoir,

Tu peux remplacer GetUsername() par Environ("Username")

Sheets("espion").Cells(temp, 4) = Environ("username")

JB

On 2 juin, 18:20, "Nito" wrote:
Bonjour à vous tous
Pouvez-vous m'aider avec cette formule je suis débutante.
Pourquoi lorsque je l'effectue ...il est mentionné ERREUR compilation
SuB ou Function non définie
Merci pour l'aide

Private Sub Worksheet_Change(ByVal Target As Range)
temp = Application.CountA(Sheets("espion").Range("a:a")) + 1
Sheets("espion").Cells(temp, 1) = Target.Address
Sheets("espion").Cells(temp, 2) = Now
Sheets("espion").Cells(temp, 3) = Target
Sheets("espion").Cells(temp, 4) = GetUserName()
End Sub