Salut ce qui concerne la protection de VBA la protection avec mot de passe de projet il sufera mais l'application peu travailler commeme a monavi si tu peu ajouter une protection avec le disque dur ca sera bon je vais te donnes un funcion pour l'integration de numero de serie de disque dure le voila : Private Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" ( _ ByVal lpRootPathName As String, _ ByVal lpVolumeNameBuffer As String, _ ByVal nVolumeNameSize As Long, _ lpVolumeSerialNumber As Long, _ lpMaximumComponentLength As Long, _ lpFileSystemFlags As Long, _ ByVal lpFileSystemNameBuffer As String, _ ByVal nFileSystemNameSize As Long _ ) As Long Private Const MAX_PATH = 260 Public Function Serie_ordi() As String Dim strRacine As String, strVolumeName As String, strFileSystemName As String Dim lSerialNumber As Long, lpMaximumComponentLength As Long, lFileSystemFlag As Long strRacine = "c:\" strVolumeName = String$(MAX_PATH, Chr$(0)) strFileSystemName = String$(MAX_PATH, Chr$(0)) If GetVolumeInformation(strRacine, strVolumeName, MAX_PATH, lSerialNumber, _ lpMaximumComponentLength, lFileSystemFlag, strFileSystemName, MAX_PATH) Then strVolumeName = Left$(strVolumeName, InStr(strVolumeName, Chr$(0)) - 1) strFileSystemName = Left$(strFileSystemName, InStr(strFileSystemName, Chr$(0)) - 1) 'MsgBox "Numéro de série : " & lSerialNumber Serie_ordi = lSerialNumber Else MsgBox "Une erreur s'est produite !", vbExclamation End If End Function et bons chances