Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre du Club Avatar de Superzest 76
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2018
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2018
    Messages : 44
    Points : 69
    Points
    69

    Par défaut Lecture d'une ligne de données dans un fichier .TXT selon un ID

    Bonjour,
    (Je travail sous Intouch en VBS)
    Voila mon problème, J'ai un fichier .txt qui contiens des lignes de la façon suivante: Nom ; Prénom ; N°Badge
    Nom ; Prénom ; N°Badge (etc sur plusieurs ligne)
    Je Voudrais un fois que l'utilisateur ai rentrer son ID que le programme sauvegarde son nom prénom dans deux variable.
    Des petits bout de code a me suggérer ?
    Merci d'avance.
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”

  2. #2
    Membre du Club Avatar de Superzest 76
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2018
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2018
    Messages : 44
    Points : 69
    Points
    69

    Par défaut [Edit]

    Voila un bout de code pour testé si le document existe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Graphics_WhileRunning()
     
                    Dim ScriptFileName, InputFile, objFSO, Temp,lecture
                    Temp = "C:\Badge.txt"
    					ScriptFileName = Temp 
    					 Set objFSO = CreateObject("Scripting.FileSystemObject")
                    If objFSO.FileExists(ScriptFileName) Then
    					ScriptFileName = Temp
    					MsgBox("gg !")
    					Else
    					MsgBox("Bg !")
    					End If
    					Set objFSO = Nothing
    End Sub
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”

  3. #3
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    juin 2009
    Messages
    3 553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : juin 2009
    Messages : 3 553
    Points : 8 542
    Points
    8 542

    Par défaut

    et soyez le bienvenue sur DVP
    Si vous voulez avancer dans votre projet, alors, il faut être plus explicite dans votre question !
    Le ID ça represente quoi exactement ? Est-ce-que c'est le n° de badge c'est ça ? ou autre chose ?
    Pouvez-vous au moins nous poster un petit exemple concret de fichier texte par pièce-jointe ou bien par copier coller, en modifiant bien-sûr vos données personnels ?
    @+

  4. #4
    Membre du Club Avatar de Superzest 76
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2018
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2018
    Messages : 44
    Points : 69
    Points
    69

    Par défaut

    Alors déjà de la reponse voila en PJ un example de fichier .txt
    L'ID correspond à un badge en effet. L'idée c'est de pouvoir récupéré pour un ID donné ex: 171997 les informations de la personne (Nom, Prénom dans le cas présent).
    Voila pour le tout début d'un très lonnnnngggg programme !
    Merci d'avence
    Fichiers attachés Fichiers attachés
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”

  5. #5
    Rédacteur/Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    décembre 2004
    Messages
    4 668
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : décembre 2004
    Messages : 4 668
    Points : 10 274
    Points
    10 274

    Par défaut

    Salut Superzest 76, bienvenue sur DVP

    Si cela peut être utile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Option Explicit
     Dim Nom, Prenom
     
    Sub Recherche(Nbadg)
    	Dim fso, fichier, T
    	Dim ContenuFichier, TblLgn, TblCol
    	Dim NumBadge: NumBadge = Nbadg
     
    	Nom=""
     
    	Set fso = CreateObject("Scripting.FileSystemObject")
    	Set fichier = fso.opentextfile("C:\MesProgs\En VBScript et HTA\ExtractionFichierVariable\badge.txt", 1)
    	ContenuFichier = fichier.ReadAll
    	fichier.Close
    	Set fichier = Nothing
     
    	TblLgn = Split(ContenuFichier,vbNewline)
    	For T = 0 To UBound(TblLgn) - 1
    		TblCol = Split(TblLgn(T), ";", -1, vbTextCompare) 
    		If TblCol(2) = NumBadge Then
    			Nom = TblCol(0)
    			Prenom = TblCol(1)
    			Exit sub
    		End If
    	Next
     End sub
     '-------------------------------------------
    Recherche "17543"
    If Nom <> "" then
    	msgbox "nom: " & Nom & vbnewline & "Prenom: " & Prenom
    	Else
    	msgbox "Il n'y a personne correspondant à ce N° de badge"
    End if
    Recherche "123456789"
    If Nom <> "" then
    	msgbox "nom: " & Nom & vbnewline & "Prenom: " & Prenom
    	Else
    	msgbox "Il n'y a personne correspondant à ce N° de badge"
    End if
    ProgElecT
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.

  6. #6
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    juillet 2009
    Messages
    2 117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : juillet 2009
    Messages : 2 117
    Points : 4 904
    Points
    4 904

    Par défaut

    Mets le script et le fichier texte dans le même dossier et exécute ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Option Explicit
     
    Const NomFich = ".\Badge.txt"
    Const ForReeading = 1
    Dim strSearch, Table, Nom, Prenom, ID, fso, Fich, Ret, Reponse
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Fich = fso.OpenTextFile(NomFich, ForReeading, False)
    Reponse = InputBox("Donner l'ID de la personne à chercher:", "ID")
    If Reponse = "" Then WScript.Quit
    strSearch = Reponse
    Do While Not Fich.AtEndOfStream
       Ret = Fich.ReadLine
       If InStr(1, Ret, strSearch, vbTextCompare) > 0 Then
         Table = Split(Ret, ";")
         Nom = Table(0)
         Prenom = Table(1)
         ID = Table(2)
         Exit Do
       End If
    Loop
    MsgBox   "Nom : " & Nom & vbNewLine & "Prenom : " & Prenom & vbNewLine & "ID : " & ID, vbOKOnly, "Infos"
    Tu peux également mettre le fichier texte ailleurs tout en modifiant la constante NomFich selon le nouveau chemin.


    [EDIT] Je viens juste de voir que ProgElecT(Salut) a posté une réponse(le temps de faire une prévisualisation et rectification). De toute façon, 2 manières de parvenir au même résultat est un plus
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA)
    Vous pouvez consulter mes contributions
    Consultez les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr ICI

  7. #7
    Membre du Club Avatar de Superzest 76
    Homme Profil pro
    Étudiant
    Inscrit en
    septembre 2018
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2018
    Messages : 44
    Points : 69
    Points
    69

    Par défaut

    Merci pour vos réponse!!
    Ca marche du feux de dieux !! merci infiniment^^
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/11/2018, 12h22
  2. [Toutes versions] Lire une partie de données dans un fichier.txt
    Par arthson dans le forum VBA Access
    Réponses: 0
    Dernier message: 18/07/2012, 23h31
  3. inclure une ligne de données dans un fichier csv
    Par alvine18 dans le forum Langage
    Réponses: 5
    Dernier message: 08/06/2012, 15h40
  4. [XL-2007] recherche d'une ligne de texte dans un fichier txt
    Par cagelion dans le forum Excel
    Réponses: 5
    Dernier message: 25/09/2010, 20h42
  5. Comment créer une base de donnée dans un fichier .txt
    Par vantoff dans le forum C++Builder
    Réponses: 9
    Dernier message: 19/07/2006, 20h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo