Ecriture dans fichier
Résolu
Allanoel
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
Allanoel Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Allanoel Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je vous écris pour vous demander si vous savez comment créer un fichier texte (.txt genre bloc note), y écrire des informations, l'enregistrer et ensuite que je puisse restituer ses informations au endroits ou elles étaient à partir de ce fichier créé.
Etant sur la version 2010 de Microsoft excel j'ai du mal à trouver comment programmer cela, je n'avais aucun mal à le faire sur Visual Basic mais la je ne sais pas du tout quelle procédure utilisé etc.
Merci d'avance pour votre aide.
Je vous écris pour vous demander si vous savez comment créer un fichier texte (.txt genre bloc note), y écrire des informations, l'enregistrer et ensuite que je puisse restituer ses informations au endroits ou elles étaient à partir de ce fichier créé.
Etant sur la version 2010 de Microsoft excel j'ai du mal à trouver comment programmer cela, je n'avais aucun mal à le faire sur Visual Basic mais la je ne sais pas du tout quelle procédure utilisé etc.
Merci d'avance pour votre aide.
A voir également:
- Ecriture dans fichier
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
7 réponses
Bonjour,
Voir ceci:
https://warin.developpez.com/access/fichiers/#LII
Voir ceci:
https://warin.developpez.com/access/fichiers/#LII
Sub ecrire() Dim intFic As Integer intFic = FreeFile Open "C:\Users\LePivert\monfichier.txt" For Output As intFic 'chemin fichier texte Print #intFic, Range("A1") Print #intFic, Range("A2") Print #intFic, Range("A3") Print #intFic, Range("A4") Print #intFic, Range("A5") Close intFic End Sub Sub lecture() Dim intFic As Integer Dim strLigne As String intFic = FreeFile Open "C:\Users\LePivert\monfichier.txt" For Input As intFic 'chemin fichier texte While Not EOF(intFic) Line Input #intFic, strLigne Range("A1") = strLigne Line Input #intFic, strLigne Range("A2") = strLigne Line Input #intFic, strLigne Range("A3") = strLigne Line Input #intFic, strLigne Range("A4") = strLigne Line Input #intFic, strLigne Range("A5") = strLigne Wend Close intFic End Sub
Bonjour,
Oups désolé j'ai oublié de dire que mes informations devaient être enregistrées à partir d'un form depuis des textbox, est-ce que je dois juste adapter les "range" ou c'est un code particulier ?
Merci de te pencher sur mon problème.
Oups désolé j'ai oublié de dire que mes informations devaient être enregistrées à partir d'un form depuis des textbox, est-ce que je dois juste adapter les "range" ou c'est un code particulier ?
Merci de te pencher sur mon problème.
Il suffit juste de remplacer:
Range("A1") par TextBox1 et la même chose pour tout les autres
Range("A1") par TextBox1 et la même chose pour tout les autres
'écrire Print #intFic, TextBox1 'lire TextBox1 = strLigne
D'accord je me disais, j'essaie tout ça je reviendrai vers toi pour rendre compte de ma situation.
Merci de ton aide.
Merci de ton aide.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Voila je pense avoir fini mon programme de sauvegarde je te l'envois histoire que tu vois ce que j'ai fais , je l'ai un peu modifié histoire de pouvoir transporter le programme pour que celui-ci nous demande le chemin d'accès au fichier.
Si tu remarques une erreur fais le moi savoir ou éventuellement une faute de procédure ou quoi qui pourra entrainer une erreur je suis preneur il ne faudrait pas que mon programme s'arrête pour une erreur :p.
Voici le programme :
La sauvegarde
Le chargement
Oui j'ai rajouté des if mais c'est parce que j'avais une erreur quand j'annulais la boite de sélection des fichiers.
Sur ce je te dis merci je reste quand même la si tu as un commentaire à faire bonne continuation à toi.
Si tu remarques une erreur fais le moi savoir ou éventuellement une faute de procédure ou quoi qui pourra entrainer une erreur je suis preneur il ne faudrait pas que mon programme s'arrête pour une erreur :p.
Voici le programme :
La sauvegarde
Private Sub ecrire_Click() Dim intFic As Integer Dim chemin_acces As String Dim Ctr Application.FileDialog(msoFileDialogFilePicker).AllowMultiSelect = True Application.FileDialog(msoFileDialogFilePicker).Show For Ctr = 1 To Application.FileDialog(msoFileDialogFilePicker).SelectedItems.Count chemin_acces = Application.FileDialog(msoFileDialogFilePicker).SelectedItems(Ctr) Next If chemin_acces <> "" Then intFic = FreeFile Open chemin_acces For Output As intFic 'chemin fichier texte Print #intFic, puissance_absorbee Print #intFic, courant_nominal Print #intFic, courant_ib Print #intFic, courant_iz Print #intFic, courant_admissible Print #intFic, section_norme Print #intFic, section_constructeur Print #intFic, reference Print #intFic, tension Print #intFic, rendement Print #intFic, puissance_fournie Print #intFic, facteur_de_puissance Print #intFic, lettre_de_selection Print #intFic, ku Print #intFic, ke Print #intFic, ka Print #intFic, k1 Print #intFic, k2 Print #intFic, k3 Close intFic End If End Sub
Le chargement
Private Sub lire_Click() Dim intFic As Integer Dim strLigne As String Dim chemin_dacces As String Dim Ctr Application.FileDialog(msoFileDialogFilePicker).AllowMultiSelect = True Application.FileDialog(msoFileDialogFilePicker).Show For Ctr = 1 To Application.FileDialog(msoFileDialogFilePicker).SelectedItems.Count chemin_dacces = Application.FileDialog(msoFileDialogFilePicker).SelectedItems(Ctr) Next If chemin_dacces <> "" Then intFic = FreeFile Open chemin_dacces For Input As intFic 'chemin fichier texte While Not EOF(intFic) Line Input #intFic, strLigne If strLigne = "" Then puissance_absorbee = " " Else puissance_absorbee = strLigne End If Line Input #intFic, strLigne If strLigne = "" Then courant_nominal = " " Else courant_nominal = strLigne End If ... ... Wend Close intFic End If End Sub
Oui j'ai rajouté des if mais c'est parce que j'avais une erreur quand j'annulais la boite de sélection des fichiers.
Sur ce je te dis merci je reste quand même la si tu as un commentaire à faire bonne continuation à toi.
Oui j'ai rajouté des if mais c'est parce que j'avais une erreur quand j'annulais la boite de sélection des fichiers.
Pour éviter cela, pourquoi ne pas créer le fichier texte dans le même dossier que le classeur?
comme ceci:
cela évite d'avoir une boite de dialogue de recherche de fichier!
Pour éviter cela, pourquoi ne pas créer le fichier texte dans le même dossier que le classeur?
comme ceci:
Sub ecrire() Dim intFic As Integer Dim chemin As String chemin = ThisWorkbook.Path & "\monfichier.txt" intFic = FreeFile Open chemin For Output As intFic 'chemin fichier texte Print #intFic, Range("A1") Print #intFic, Range("A2") Print #intFic, Range("A3") Print #intFic, Range("A4") Print #intFic, Range("A5") Close intFic Close intFic End Sub Sub lecture() Dim intFic As Integer Dim strLigne As String Dim chemin As String chemin = ThisWorkbook.Path & "\monfichier.txt" intFic = FreeFile Open chemin For Input As intFic 'chemin fichier texte While Not EOF(intFic) Line Input #intFic, strLigne Range("A1") = strLigne Line Input #intFic, strLigne Range("A2") = strLigne Line Input #intFic, strLigne Range("A3") = strLigne Line Input #intFic, strLigne Range("A4") = strLigne Line Input #intFic, strLigne Range("A5") = strLigne Wend Close intFic End Sub
cela évite d'avoir une boite de dialogue de recherche de fichier!