|
|
|
|
[Excel] écrire fichier.txt
Dernière réponse le 13 jan 2006 à 23:57:03 txiki, le 12 jan 2006 à 17:02:27Salut a tous,
J'ai créé un formulaire avec 4 champs obligatoire sur 7. Le script de controle de ces champs fonctionne très bien.
J'ai aussi un résumé qui s'affiche en pop up avant l'envoi définitif.
Jusque là tout est OK.
Le Pb, c'est que je voudrais qu'en validant, ça écrive sur un fichier texte (inscription.txt) situé dans le même répertoire avec les valeurs des champs renseignés séparé par des point virgule (;) par exemple.
Question 1: s'il y a plusieurs validations simultanées, comment ça va se passer pour qu'il y ait plusieurs lignes ?
Question 2: comment faire pour qu'a l'ouverture d'excel il me récupère automatiquement ces enregistrements dans un tableau ?
Si je vous parles d'un txt c'est que je ne peux pas utiliser de base de données et qu'on m'a parlé de cette possibilité de fichier texte en écriture.
Merci infiniment d'avance pour vos lumières !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Bonjour,
Option Explicit
'
Sub CreerFichierTexte()
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim NouveauTexte, Valeur As String
Dim Limite, Boucle, Compteur As Integer
Dim Client As String
Dim oFS, NouveauFichier As Object
NouveauTexte = ThisWorkbook.Path & "\" & "MonFichier.txt"
Set oFS = CreateObject("Scripting.FileSystemObject")
Set NouveauFichier = oFS.CreateTextFile(NouveauTexte, ForWriting)
Limite = Range("A65535").End(xlUp).Row
Client = ""
For Boucle = 1 To Limite
For Compteur = 0 To 2
Client = Client & ActiveCell.Offset(0, Compteur).Value & ";"
Next Compteur
NouveauFichier.WriteLine (Client)
ActiveCell.Offset(1, 0).Select
Client = ""
Next Boucle
NouveauFichier.Close
End Sub
'
Sub LectureFichierTexte()
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim oFS As Object
Dim Boucle As Long
Dim MonFichier, Texte, Reponse, Msg As String
Dim CheminFichier As String
CheminFichier = ThisWorkbook.Path & "\" & "MonFichier.txt"
Set oFS = CreateObject("Scripting.FileSystemObject")
Set MonFichier = oFS.OpenTextFile(CheminFichier, ForReading)
While Not MonFichier.AtEndOfStream
Texte = MonFichier.ReadLine
MsgBox Texte
Wend
MonFichier.Close
End Sub
'
Lupin |
Salut Lupin et merci pour ta réponse,
<!-- Vérification des champs du formulaire
function verif()
{
var nom = document.formulaire.nom.value;
if (document.formulaire.nom.value == "")
{
alert ('Veuillez entrer votre nom');
document.formulaire.nom.focus();
return false;
}
if(document.formulaire.prenom.value == "")
{
alert ('Veuillez entrer votre prénom');
document.formulaire.prenom.focus();
return false;
}
if(document.formulaire.matricule.value == "")
{
alert ('Veuillez entrer votre matricule');
document.formulaire.matricule.focus();
return false;
}
if(document.formulaire.telephone.value == "")
{
alert ('Veuillez entrer un n° de téléphone');
document.formulaire.telephone.focus();
return false;
}
if(document.formulaire.telephone.value.length != 6)
{
alert ('Le n° de téléphone doit comporter 6 chiffres');
document.formulaire.telephone.focus();
return false;
}
else {return true;}
}
//--> Il fonctionne très sous 2000 mais pas sous XP (pour la longueur du tél.) mais bon.
Là je suis à la maison et je n'ai pas le formulaire sous la main. Mon Pb c'est que je veux pas recevoir les données par mail pour faire des copier/coller à la main dans un tableau excel. Du reste, je ne sais même pas comment je dois préparer mon tableau excel, si je dois mettre les noms des champs etc... Merci beaucoup en tous cas de m'avoir répondu. Le bonheur est la seule chose que l'on peut donner sans l'avoir. |
Re:
|

