Ouvrir un fichier text et le sauvegardé ailleurs.

Résolu
cs_Jimbo38 Messages postés 11 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 28 mai 2008 - 27 mai 2008 à 10:27
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 27 mai 2008 à 12:36
Bonsour tout le monde!

Bien dormie j'espere :p

Voila donc toujours dans le cadre de mon apprentissage en vb, on m'as
demandé d'ouvrir un fichier text et de le save ailleurs, j'aimerais
fais cela uniquement avec des commondialog si possible biensur.

voila mon code mais cela marche pas, je sais pourquoi mais je n'arrive
pas a y remedier =(

Public fichier1 As String
Public fichier2 As String
Private Sub Command1_Click()
' Attribue à CancelError la valeur True
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
' Définit la propriété Flags
CommonDialog1.Flags = cdlOFNHideReadOnly
' Définit les filtres
CommonDialog1.Filter = "Fichiers texte (*.txt)|*.txt"
' Définit le filtre par défaut
CommonDialog1.FilterIndex = 2
' Affiche la boîte de dialogue Ouverture
CommonDialog1.ShowOpen

Open fichier1 For Input As #1

Exit Sub

ErrHandler:
'L'utilisateur a cliqué sur Annuler
Exit Sub

End Sub

Private Sub Command2_Click()
' Attribue à CancelError la valeur True
CommonDialog2.CancelError = True
On Error GoTo ErrHandler
' Définit la propriété Flags
CommonDialog2.Flags = cdlOFNHideReadOnly
' Définit les filtres
CommonDialog2.Filter = "Fichiers texte(*.txt)|*.txt"
' Définit le filtre par défaut
CommonDialog2.FilterIndex = 2
' Affiche la boîte de dialogue Ouverture
CommonDialog2.ShowSave
Open fichier2 For Output As #2
fichier2 = CommonDialog2.FileName
Print #2, fichier1

Exit Sub

ErrHandler:
'L'utilisateur a cliqué sur Annuler
Exit Sub
End Sub

Quelqun aurait le courrage de m'aidé via la forum ou msn? comme bon
vous semble ^^

(ps: je debute en vb)

Merci d'avance ;)

12 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 12:05
oui ^^
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 11:28
commentaire inutiles car paraphrasage total du code :
' Attribue à CancelError la valeur True
CommonDialog1.CancelError = True

explique plutot le but d'affecter telle ou telle valeur.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 11:30
' Définit les filtres
CommonDialog1.Filter = "Fichiers texte (*.txt)|*.txt"
' Définit le filtre par défaut
CommonDialog1.FilterIndex = 2

2 ? tu lui donne un seul filtre, comment pourrait-il séléctionner le 2ème ?

Open, Print...

Utilise FileCopy ou Name As
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 11:32
en outre, les flags choisis ne semblent pas très adéquats
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Jimbo38 Messages postés 11 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 28 mai 2008
27 mai 2008 à 11:45
Merci pour tes reponses, un support sur msn vite fais serais possible
? J'ai essayé 2-3 trucs la mais rien a faire =(
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 11:48
quel est le but, au final ?

ouvrir un fichier texte, et avoir la possibilité de l'enregistrer ailleurs ?

une sorte de bloc notes, en somme, non ?
0
cs_Jimbo38 Messages postés 11 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 28 mai 2008
27 mai 2008 à 11:51
En gros oui, c'est pour apprendre a ouvrir et a sauvegardé ailleur carm on gros projet final et de créé un prog pour sauvegardé tout les fichié sur le reseau qui ont été modifié, mais ont y va petit a petit,
Donc la pour la 1ere etape j'aimerai ouvrir un fichier texte et
l'enregistré ailleurs si possible uniquement avec commondialog.
0
cs_Jimbo38 Messages postés 11 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 28 mai 2008
27 mai 2008 à 11:52
Enfin pas tout a fais comme un bloc note, je veut veut juste ouvrir en lecture un fichier et le mettre ailleurs, je veut pas le fichier texte affiché
sur mon ecran.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 11:58
déplace le ou copie le, pas besoin de Open...
0
cs_Jimbo38 Messages postés 11 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 28 mai 2008
27 mai 2008 à 12:01
Comment? =(
Filecopy?
0
cs_Jimbo38 Messages postés 11 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 28 mai 2008
27 mai 2008 à 12:14
Yeah super! Merci bcp a toi voilam on code au cas ou :p ^^

Grand merci a toi, tu m'as bien guidés, au moins je m'en souviendrai de ces commandes, encore merci!

Public Sub Command1_Click()
' Attribue à CancelError la valeur True
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
' Définit la propriété Flags
CommonDialog1.Flags = cdlOFNHideReadOnly
' Définit les filtres
CommonDialog1.Filter = "Fichiers texte (*.txt)|*.txt"
' Définit le filtre par défaut
CommonDialog1.FilterIndex = 1
' Affiche la boîte de dialogue Ouverture
CommonDialog1.ShowOpen

' Attribue à CancelError la valeur True
CommonDialog2.CancelError = True
On Error GoTo ErrHandler
' Définit la propriété Flags
CommonDialog2.Flags = cdlOFNHideReadOnly
' Définit les filtres
CommonDialog2.Filter = "Fichiers texte (*.txt)|*.txt"
' Définit le filtre par défaut
CommonDialog2.FilterIndex = 1
' Affiche la boîte de dialogue Ouverture
CommonDialog2.ShowSave

Dim SourceFile, DestinationFile
SourceFile = CommonDialog1.FileName
destination = CommonDialog2.FileName



FileCopy SourceFile, destination
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
27 mai 2008 à 12:36
Comme je te le disais, tes commentaires, les flags et les controles effectués sont insuffisants :

Private Sub Command1_Click()
Dim sSource As String
With CommonDialog1
'# Si l'utilsateur presse Annuler, une erreur se déclenchera.
.CancelError = True
'# Laquelle sera interceptée
On Error GoTo XCancelled
.Flags = cdlOFNExplorer Or cdlOFNFileMustExist
.Filter = "Fichiers texte (*.txt)|*.txt"
'# Affiche la boîte de dialogue Ouverture
.ShowOpen

sSource = .FileName

'# Les flags pour une boite "Enregistrer sous" diffèrent un peu...
.Flags = cdlOFNExplorer Or cdlOFNNoReadOnlyReturn Or cdlOFNOverwritePrompt Or cdlOFNPathMustExist
.ShowSave

If StrComp(.FileName, sSource, vbTextCompare) Then
On Error Resume Next
'# On supprime le fichier, des fois qu'il existe déjà...
Kill .FileName

'# Onn rétablit le gestionnaire d'erreurs
On Error GoTo 0
FileCopy sSource, .FileName
Else
MsgBox "Fichier source et destination identiques.", vbExclamation
End If
End With
Exit Sub
XCancelled:
MsgBox "Action annulée.", vbExclamation
End Sub
0
Rejoignez-nous