Fichier avec nom d'un textbox. [Résolu]

Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
- - Dernière réponse : cs_Tom89
Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
- 9 août 2005 à 22:19
Bonjour,

J'ai le code suivant :



Private Sub Valider_Click()



If Text2A.Text = "" Then

MsgBox "Entrer votre pseudo"

Else:

Open "E:\Tom89 Dragon bleu\Fichiers VB\Essai_02\Text2A.Text.txt" For Output As #1

Close #1

End If



End Sub




Le resultat de se code est évidamment la crétion d'un fichier texte nommé "Text2A.Text".

Je voudrais en réalité que ce fichier texte prenne le nom de se qui est écrit dans "Text2A.Text".

J'ai essayé d'inclure une variable, j'ai essayé de mettre "Val" et
"Str" devant (sans savoir ce qui allait se passer évidamment), mais ça
n'a rien changé.

Merci d'avance!



Tom89
Afficher la suite 

10 réponses

Meilleure réponse
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
3
Merci
Salut,

Open "E:\Tom89 Dragon bleu\Fichiers VB\Essai_02" & Text2A.Text & ".txt"

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?

Merci cs_CanisLupus 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
0
Merci
Merci ça a marché.

Mais je ne suis pas allé bien loin :



Private Sub Valider_Click()



If Text2A.Text = "" Then

MsgBox "Entrer votre pseudo"

Else:

If Text2B.Text = "" Then

MsgBox "Entrer votre mot de passe"

Else:

If Text2C.Text = Text2B.Text Then

Password = Text2B.Text

Open
"E:\Tom89 Dragon bleu\Fichiers VB\Essai_02" & Text2A.Text &
".txt" For Output As #1

Do While Not EOF(1)

Print #1, Password

Loop

Close #1

Else:

MsgBox "Mot de passe invalide"

End If

End If

End If



End Sub


Vous l'aurez compris le code est cencé créer un fichier du nom de ce
qui'il y a dans Text2A.Text et d'y inscrire ce qui est écrit dans
Text2B.Text à condition que ni Text2A ni Text2B ne soit vide et que
Text2B soit égal à Text2C.

Le souci c'est que le fichier ne se créer pas!

Merci d'avance



Tom89
Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
0
Merci
C'est bon j'ai compris ou était mon erreur.

J'avais oublié un "" à la fin de l'adresse.

Cependant il n'y a rien qui s'inscrit dans le fichier!



Tom89
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
0
Merci
Enlève le : Do While Not EOF(1) et le loop
En effet, on utilise ça quand on lit le fichier. Si tu viens de le créer, il est forcément à EOF.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
0
Merci
Rebonjour,

Voila mon code du moment :



If Text1A.Text = "" Then

MsgBox "Entrer votre pseudo"

Else:

If Text1B.Text = "" Then

MsgBox "Entrer votre mot de pasee"

Else:

If "E:\Tom89 Dragon
bleu\Fichiers VB\Essai_02" & Text1A.Text & ".txt" = False Then

MsgBox "Pseudo incorrect"

Else:

Open
"E:\Tom89 Dragon bleu\Fichiers VB\Essai_02" & Text1A.Text &
".txt" For Input As #2

Do While Not EOF(2)

Line Input #2, a

Loop

Close #2

If Text1B.Text = a Then

MsgBox "FELICITATIONS!!!"

Else:

MsgBox "Mot de passe incorrect"

End If

End If

End If

End If






L'effet voulu est le suivant :

Ouvrir le fichier du nom de ce qu'il y dans le Text1A puis verifier que
ce que contient le fichier soit la même chose que ce qu'il y a dans la
Text1B.

Je pense que le probème est au niveau de la ligne ou "False" est marqué
pour la simple raison que je ne suis pas sur que cela existe. lol.

Encore une fois merci!



Tom89
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
0
Merci
1) si fichier n'esiste pas

If Dir("E:\Tom89 Dragon bleu\Fichiers VB\Essai_02" & Text1A.Text & ".txt") = "" Then



2) si mot de passe est dans le fichier

Dim Exist As Boolean
Open "E:\Tom89 Dragon bleu\Fichiers VB\Essai_02" & Text1A.Text & ".txt" For Input As #2

Exist = False

Do While Not EOF(2)

Line Input #2, a

If Text1B.Text a Then Exist True: Exit Do

Loop

Close #2

If Exist Then

MsgBox "FELICITATIONS!!!"

Else:

MsgBox "Mot de passe incorrect"

End If


Daniel
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
0
Merci
Remplace par :

If dir("E:\Tom89 Dragon bleu\Fichiers VB\Essai_02" & Text1A.Text & ".txt") = "" Then
MsgBox "Pseudo incorrect"

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
0
Merci
Merci.

Tout marche comme prévu.

Je comprends petit à petit et ça avance.



Je voudrais savoir ce qu'est que "Boolean".

Mon avis est que ça oblige la variable définie à prendre soit la valeur "True" soit la valeur "False". Ais-je raison?



Merci!



Tom89
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Dernière intervention
31 mars 2015
0
Merci
je pense que ça vient de :



Bool (George)
Mathématicien et logicien anglais (1815-1864) qui a donné son nom à l’algèbre de Bool


donc 2 valeurs possibles:

False --> équivallent à 0

True --> équivallent à -1 (ou 1 en .net)



toute valeur #0 donnera True

Dim Bool As Boolean

Bool = 1

Msgbox Bool

Msgbox Bool * 1



bien sûr les valeurs normales sont True et False


Daniel
Messages postés
50
Date d'inscription
jeudi 4 août 2005
Dernière intervention
13 décembre 2008
0
Merci
Mon prg marche a merveille.

Actuellement j'essaye de trouver un moyen d'enregistrer les pseudo et les mots de passe dan le même fichier.

J'essaye également de trouver un moyen qui permettrait de faire marcher le programme même sur un autre ordinateur.

Pour l'instant c'est pas possible à cause de l'adresse.



Tom89

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.