Empecher de créer un fichier en cas d' erreur de saisie?
cs_zyom
Messages postés5Date d'inscriptionjeudi 1 mars 2007StatutMembreDernière intervention 5 mars 2007
-
2 mars 2007 à 12:47
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
2 mars 2007 à 23:03
Bonjour, voilà j'ai encore un problème :)
Ceci est mon code source pour une petite application
Comme vous pouvez le deviner, çà écrit quelques lignes dans un fichier .cfg.
Le problème, c'est que je ne veux pas créer de fichiers tant qu'il y a une erreur dans les textes que je saisi. Actuellement, çà écrit tout dans le fichier, à part les lignes où j'ai commis des erreurs, et il ne faut pas que ca arrive, il faut que le fichier ne se crée pas s'il y a la moindre erreur dans mes saisies!
J'ai réussi à faire ce que je voulais en inversant les vérifications des saisies, à l'aide d'un boolean nommé 'error' que je mettais a True à chaque MsgBox d'erreur, de cette facon, à la fin je vérifiais si error = false, dans ce cas ouvrir le fichier, printer les lignes, et fermer. Mais cette methode ne me convient pas (question d'habitude a Pawno peut-etre?) et je suis sûr qu'il y a un autre moyen ..enfin...dites oui et aidez moi!
Je suis extreme-débutant (j'ai commencé VB6 hier soir)
Merci pour vos aides :) bonne journée.
A voir également:
Empecher de créer un fichier en cas d' erreur de saisie?
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 2 mars 2007 à 13:10
Salut,
il ne faut pas ouvrir ton fichier (via Open) dès le départ, fais tes test d'abord..
Exemple :
dim ctl as Control
for each ctl in me.controls
if typeof ctl Is textbox then
if ctl.Text = vbnullstring then Msgbox "il manque un élément": ctl.Setfocus: Exit Sub
End If
Next ctl
' dans la boucle précédante, si UNE textbox est vide, ta sub ne se fait pas, mais si elle sont toutes renseignées, alors ton code se poursuit, et c'est à ce moment là que tu vas ouvrir le fichier pour y placer les résultats
@++
<hr width ="100%" size="2" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
/DIV>
cs_zyom
Messages postés5Date d'inscriptionjeudi 1 mars 2007StatutMembreDernière intervention 5 mars 2007 2 mars 2007 à 14:38
Merci :), pour l'instant je n'arrive pas à utiliser ta boucle :) mais le Exit Sub m'a grandement aidé car je ne connaissait pas, donc j'ai pu faire ce que je voulais...Même si c'est moins performant que la boucle c'est pas très important, ca écrit au max 25 lignes dans le fichier. Et puis ta boucle ne rapporte pas les valeurs érronées à ce que j'ai compris, seulement les champs vides (mais je garde cette boucle quand même ca pourra m'etre utile un jour!).
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 2 mars 2007 à 23:03
Ta méthode avec une variable booléenne n'est pas mal non plus. Dès qu'il y a une erreur, la variable stocke ce qu'il faut (Vrai ou Faux) pour empêcher la création du fichier.
Par contre, évite d'utiliser des mots réservés à VB lorsque tu nommes tes variables. Error est utilisé à toutes sortes de sauces pour gérer les erreurs, mais ne devrait pas être utilisé comme nom de variable ...