TROUVER UNE LETTRE LIBRE POUR UN LECTEUR VERSION 2

Signaler
Messages postés
16
Date d'inscription
mardi 1 avril 2003
Statut
Membre
Dernière intervention
20 juillet 2003
-
Messages postés
222
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
30 juin 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7324-trouver-une-lettre-libre-pour-un-lecteur-version-2

Messages postés
222
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
30 juin 2008

HEY. MEME PAS BESOINS DE DRIVELISTBOX
<
function FindLetter as string
on error resume next
dim fso
set fso=createobject("scripting.filesystemobject")
for i = asc("c") to asc("z")
if fso.getdrive(chr(i) & ":").driveletter=empty then findletter=chr(i):exit for
next
set fso=nothing
end function
>
c pas beau ça?
Messages postés
38
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
29 mai 2006

Merci de ton aide mauricet
j'aime les commentaires qui ne se contente pas de critiquer :)

je suis de ton avis d'autant plus que pour moi le but n'est pas forcément de trouver une lettre de libre a pouvoir assignée mais de progresser en vb

merci
Messages postés
89
Date d'inscription
lundi 3 mars 2003
Statut
Membre
Dernière intervention
28 juillet 2008

Bonjour
A mon avis, il ne faut jamais abandonner, bien que le code de Renfield est meilleur, il faut faire aboutir ton idée afin d'en tirer l'expérience.
Je me suis permit de modifier ton code, tout en restant dans ton idée.
Option Explicit
Private Sub Command1_Click()
Dim i As Integer
Dim lettre As String
Dim numlettre As Integer

'rempli list1 du contenu du poste de travail
For i = 0 To 25
List1.AddItem (Drive1.List(i))
If Drive1.List(i) = "" Then Exit For
Next i

i = 1
Do Until lettre = "z"
lettre = Mid$(List1.List(i - 1), 1, 1)
'affecte la valeur ascii de lettre
If lettre <> "" Then numlettre = Asc(lettre)
'vérifie si les lettres se suivent
'If Asc(Mid$(List1.List(i), 1, 1)) <> numlettre Then
If List1.List(i) = "" Then
'elle se suivent pas donc y a une lettre de libre
Text1.Text = Chr(numlettre + 1)
numlettre = Asc(Text1.Text)
List2.AddItem Chr(numlettre)
Form1.Print numlettre
If numlettre 122 Then lettre "z"
End If
i = i + 1
Loop

End Sub
A bientôt
Maurice Thiébaut
Messages postés
38
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
29 mai 2006

j'ai mis 10 parceque comme je suis un DEBUTANT je connaissais pas la propriété listcount de drivelistbox mais c'est nickel je met la source à jour
merci
au fait pour les plantages moi çà tourne très bien, je suis sous 2000
vous êtes avec quel système ?
Afficher les 7 commentaires