Texte aléatoire

Signaler
Messages postés
13
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
17 juin 2004
-
Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
-
Bonjour,
je m'initie à Visual Basic et pour mon premier programme je voudrais chargé au hasard une ligne d'un fichier .txt
Pouvez vous m'expliquer comment faire ?

5 réponses

Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
10
Bonjour
Un truc du genre :
' Déclaration des variables
Dim Ligne As String, No As Integer, i As Integer, Max As Integer
' Ouverture du fichier en lecture
Open "C:\Chemin\Fichier.txt" For Input As #1
' Calcul du nombre de lignes du fichier
Do While Not EOF(1)
Line Input #1, Ligne
Max = Max + 1
Loop
' Retour au début
Seek 1, 1
' Initialisation de la fonction Rnd (nombre aléatoire)
Randomize
' Numéro de la ligne à afficher
No = 1 + Rnd * Max
' Recherche de la ligne
For i = 1 To No
Line Input #1, Ligne
Next i
' Fermeture du fichier
Close 1
' Affichage de la ligne
MsgBox Ligne
Messages postés
1247
Date d'inscription
mardi 7 mai 2002
Statut
Membre
Dernière intervention
18 février 2019
4
Dans le mm style mais plus court :

Dim TabTxt() As String, X As Integer 'Déclarations
Open "c:\fichier.txt" For Input As #1 'Ouverture du fichier
TabTxt = Split(Input(LOF(1), 1), vbCrLf) 'Stockage des lignes dans un tableau
Close #1 'Fermeture
Randomize 'mélange
X = Int(Rnd * UBound(TabTxt)) 'Nb aléatoire entre 0 et le nb de ligne
MsgBox TabTxt(X) 'Afiichage de la ligne
Messages postés
13
Date d'inscription
mardi 17 décembre 2002
Statut
Membre
Dernière intervention
17 juin 2004

merci beaucoup c'est impécable
Messages postés
1
Date d'inscription
dimanche 3 avril 2005
Statut
Membre
Dernière intervention
3 avril 2005

Ben moi ca ne marche absolument pas...
Ya un PB avec Open , Line Input et #1

(Jsui en VB.net)
Merci de m'expliquer
@+
Agent N°22.
Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
10
Bonjour
Pose la question dans un nouveau message en précisant que tu es en VB.NET