OVH Cloud OVH Cloud

lettre lecteur cd rom

4 réponses
Avatar
Izmi
Bonjour tout le monde ;
Sur l'aide de l'éditeur VBA j'ai trouvé le code ci-après qui permet
d'afficher les lettres de tous les lecteurs du PC (A - C - D...). Je voudrais
n'afficher que la lettre du lecteur cd rom. Comment faire ?

Le code trouvé est la suivant :

Sub AfficheListeLecteur
Dim fs, d, dc, s, n
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d in dc
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
Else
n = d.VolumeName
End If
s = s & n & vbCrLf
Next
MsgBox s
End Sub

Merci

PS :
La ligne après else est à supprimer pour que ça fonctionne.

Izmi

4 réponses

Avatar
Jacques93
Bonjour Izmi,

Avec la propriété DriveType

Select Case d.DriveType
Case 0: s = "Type inconnu"
Case 1: s = "disque amovible"
Case 2: s = "disque dur"
Case 3: s = "disque réseau"
Case 4: s = "CD -Rom"
Case 5: s = "disque RAM"
End Select

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/jsprodrivetype.asp

Bonjour tout le monde ;
Sur l'aide de l'éditeur VBA j'ai trouvé le code ci-après qui permet
d'afficher les lettres de tous les lecteurs du PC (A - C - D...). Je voudrais
n'afficher que la lettre du lecteur cd rom. Comment faire ?

Le code trouvé est la suivant :

Sub AfficheListeLecteur
Dim fs, d, dc, s, n
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d in dc
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
Else
n = d.VolumeName
End If
s = s & n & vbCrLf
Next
MsgBox s
End Sub

Merci

PS :
La ligne après else est à supprimer pour que ça fonctionne.

Izmi




--
Cordialement,

Jacques.

Avatar
Izmi
merci pour la réponse.

Où mettre le code que tu m'as proposé ? Je ne suis pas très fort. S'il t'est
possible de m'expliquer davantage avec un code ptêt à fonctionner : genre
copier-coller et ça marche :)

Merci encore


Bonjour Izmi,

Avec la propriété DriveType

Select Case d.DriveType
Case 0: s = "Type inconnu"
Case 1: s = "disque amovible"
Case 2: s = "disque dur"
Case 3: s = "disque réseau"
Case 4: s = "CD -Rom"
Case 5: s = "disque RAM"
End Select

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/jsprodrivetype.asp

Bonjour tout le monde ;
Sur l'aide de l'éditeur VBA j'ai trouvé le code ci-après qui permet
d'afficher les lettres de tous les lecteurs du PC (A - C - D...). Je voudrais
n'afficher que la lettre du lecteur cd rom. Comment faire ?

Le code trouvé est la suivant :

Sub AfficheListeLecteur
Dim fs, d, dc, s, n
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d in dc
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
Else
n = d.VolumeName
End If
s = s & n & vbCrLf
Next
MsgBox s
End Sub

Merci

PS :
La ligne après else est à supprimer pour que ça fonctionne.

Izmi




--
Cordialement,

Jacques.




Avatar
Jacques93
Bonjour Izmi,

Sub AfficheListeLecteur()
Dim fs, d, dc, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d In dc
If d.DriveType = 4 Then
s = s & d.DriveLetter & " - "
On Error Resume Next
Err.Clear
s = s & d.VolumeName & vbCrLf
If Err.Number = 71 Then ' Lecteur vide
s = s & "Lecteur vide" & vbCrLf
End If
On Error GoTo 0
End If
Next d
MsgBox s
End Sub

NB : Si tu veux afficher le nom de volume, comme dans le code que tu as
récupéré, il faut qu'il y ait un CD dans le lecteur, d'où la gestion de
l'erreur 71.


merci pour la réponse.

Où mettre le code que tu m'as proposé ? Je ne suis pas très fort. S'il t'est
possible de m'expliquer davantage avec un code ptêt à fonctionner : genre
copier-coller et ça marche :)

Merci encore



Bonjour Izmi,

Avec la propriété DriveType

Select Case d.DriveType
Case 0: s = "Type inconnu"
Case 1: s = "disque amovible"
Case 2: s = "disque dur"
Case 3: s = "disque réseau"
Case 4: s = "CD -Rom"
Case 5: s = "disque RAM"
End Select

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/jsprodrivetype.asp


Bonjour tout le monde ;
Sur l'aide de l'éditeur VBA j'ai trouvé le code ci-après qui permet
d'afficher les lettres de tous les lecteurs du PC (A - C - D...). Je voudrais
n'afficher que la lettre du lecteur cd rom. Comment faire ?

Le code trouvé est la suivant :

Sub AfficheListeLecteur
Dim fs, d, dc, s, n
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d in dc
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
Else
n = d.VolumeName
End If
s = s & n & vbCrLf
Next
MsgBox s
End Sub

Merci

PS :
La ligne après else est à supprimer pour que ça fonctionne.

Izmi




--
Cordialement,

Jacques.





--
Cordialement,

Jacques.



Avatar
Izmi
Merci Jacques93.

...Et ça marche.

Merci encore

Izmi


Bonjour Izmi,

Sub AfficheListeLecteur()
Dim fs, d, dc, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d In dc
If d.DriveType = 4 Then
s = s & d.DriveLetter & " - "
On Error Resume Next
Err.Clear
s = s & d.VolumeName & vbCrLf
If Err.Number = 71 Then ' Lecteur vide
s = s & "Lecteur vide" & vbCrLf
End If
On Error GoTo 0
End If
Next d
MsgBox s
End Sub

NB : Si tu veux afficher le nom de volume, comme dans le code que tu as
récupéré, il faut qu'il y ait un CD dans le lecteur, d'où la gestion de
l'erreur 71.


merci pour la réponse.

Où mettre le code que tu m'as proposé ? Je ne suis pas très fort. S'il t'est
possible de m'expliquer davantage avec un code ptêt à fonctionner : genre
copier-coller et ça marche :)

Merci encore



Bonjour Izmi,

Avec la propriété DriveType

Select Case d.DriveType
Case 0: s = "Type inconnu"
Case 1: s = "disque amovible"
Case 2: s = "disque dur"
Case 3: s = "disque réseau"
Case 4: s = "CD -Rom"
Case 5: s = "disque RAM"
End Select

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/jsprodrivetype.asp


Bonjour tout le monde ;
Sur l'aide de l'éditeur VBA j'ai trouvé le code ci-après qui permet
d'afficher les lettres de tous les lecteurs du PC (A - C - D...). Je voudrais
n'afficher que la lettre du lecteur cd rom. Comment faire ?

Le code trouvé est la suivant :

Sub AfficheListeLecteur
Dim fs, d, dc, s, n
Set fs = CreateObject("Scripting.FileSystemObject")
Set dc = fs.Drives
For Each d in dc
s = s & d.DriveLetter & " - "
If d.DriveType = 3 Then
n = d.ShareName
Else
n = d.VolumeName
End If
s = s & n & vbCrLf
Next
MsgBox s
End Sub

Merci

PS :
La ligne après else est à supprimer pour que ça fonctionne.

Izmi




--
Cordialement,

Jacques.





--
Cordialement,

Jacques.