Numéro disque dur pour protection de fichier

Le
JP
Bonjour,

J'ai placé une macro trouvée sur le net pour maitriser l'utilisation d'=
un fichier. Mais il se trouve que mon test if .. then else ne fonct=
ionne pas comme je le souhaiterai.

La macro en question est:

Private Sub Workbook_Open()
Dim Serial As Long, VName As String, FSName As String
GetVolumeInformation "C:", VName, 255, Serial, 0, 0, FSName, 255
essai = Trim(Str$(Serial)) + vbInformation + vbOKOnly
If essai = 0 Then Sheets("Informations utilisation").Activate Else Sheets=
("Accueil et Synthèse").Activate
End Sub

La variable essai prend la valeur du numéro du disque dur et pourtant dan=
s le test, je me retrouve dans le Else Sheets("Accueil et synthèse").acti=
vate.

Une explication à cela?

Merci d'avance.

JP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
DanielCo
Le #25488922
Bonjour,
On peut récupérer le n° comme ceci :

Set fso = CreateObject("Scripting.FileSystemObject")
essai = fso.getdrive("C").serialnumber

Cordialement.
Daniel


Bonjour,

J'ai placé une macro trouvée sur le net pour maitriser l'utilisation d'un
fichier. Mais il se trouve que mon test if .. then ... else ... ne fonctionne
pas comme je le souhaiterai.

La macro en question est:

Private Sub Workbook_Open()
Dim Serial As Long, VName As String, FSName As String
GetVolumeInformation "C:", VName, 255, Serial, 0, 0, FSName, 255
essai = Trim(Str$(Serial)) + vbInformation + vbOKOnly
If essai = 0 Then Sheets("Informations utilisation").Activate Else
Sheets("Accueil et Synthèse").Activate End Sub

La variable essai prend la valeur du numéro du disque dur et pourtant dans le
test, je me retrouve dans le Else Sheets("Accueil et synthèse").activate.

Une explication à cela?

Merci d'avance.

JP
JP
Le #25488942
Bonjour DanielCo,

C'est déjà plus court mais mon test est toujours le même. Mets cette macro dans le thisworkbook pour contrôler le if... then ...else...

Private Sub Workbook_Open()
Set fso = CreateObject("Scripting.FileSystemObject")
essai = fso.getdrive("C").serialnumber
If essai = 0 Then Sheets("Informations utilisation").Activate Else Sheets ("Accueil et Synthèse").Activate
End Sub

Merci pour les conseils

JP
JP
Le #25489022
DannielCo,

Désolé, çà marche très bien. Mon test était mal formulé.

Merci encore

JP
Publicité
Poster une réponse
Anonyme