Utiliser "Enregistrer sous" en VB

Résolu
Hach_net Messages postés 38 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 4 avril 2011 - 31 déc. 2005 à 00:57
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 - 31 déc. 2005 à 12:00
Salut


Je veux enregistrer un fichier dans un autre répertoire sachant son adresse


Pour cela je veux utiliser le composant CommonDialog


J'ai fais :
CommonDialog1.ShowSave


Mais je ne sais pas comment l'utilisée ?



Merci

5 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
31 déc. 2005 à 01:32
Bonsoir,



Private Sub Command1_Click()

'Définition des propriétés de la boîte de dialogue

With CommonDialog1

.DialogTitle = "Enregistrer le fichier sous..."

.CancelError = True

.Filter = "Texte(*.txt)|*.txt|Perso(*.Per)|*.Per|Tous(*.*)|*.*"

.FilterIndex = 1

.InitDir = "C:"

.FileName = "Agenda.txt"

'Définition de la routine de traitement d'erreur _

de la boîte de dialogue

On Error GoTo Annuler

.ShowSave

End With

MsgBox "La sauvegarde sera réalisée dans le fichier " & CommonDialog1.FileName + "."

GoTo Suite:

Annuler:

MsgBox "Vous n'avez sélectionné aucun fichier de sauvegarde"

Suite:

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
31 déc. 2005 à 01:43
ShowSave (et les autres) ne permettent que de sélectionner un fichier des destination (tu récupères le nom choisi).
A toi de générer le fichier correspondant.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
31 déc. 2005 à 01:45
Ah, j'avais pas vu VBA (tu disais VB ...)
En VBA, il y a la commande SaveAs.
Regarde parmi les questions du forum de ces derniers jours, il y a eu exactement la même question "enregistrer sous"

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
31 déc. 2005 à 08:48
JP, si tu le permets, je vais m'autoriser à modifier un temps soit peu ton code...

'Perso, j'aurais également défini le flag...
...
'Défini une variable de localisation de l'erreur...
varErreur = 1

'Active le gestionnaire d'erreur (pour de la boîte de dialogue)


On Error Goto GestionErreurs
.ShowSave
End With
'Désactive le gestionnaire d'erreur
On Error Goto 0
'Tester la validité du fichier...
varErreur = 2
If FileExist(
CommonDialog1.FileName) Then ...
...

'Enregistrement du fichier, soit, comme le dit Jack (l'horrible Père fouettard ), via une fonction du VBA type SaveAs, soit manuellement via l'instruction "Open". Mais dans les deux cas, reporte-toi aux sources et forums de VBFrance.

Exit Sub

GestionErreurs
:
Select Case varErreur
Case 1
MsgBox "Vous n'avez sélectionné aucun fichier de sauvegarde"
Case 2

MsgBox "Sélection

du fichier invalide."
Case ...
...
Case Else
End If

Suite:
End Sub

Enjoy

<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
0

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

Posez votre question
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
31 déc. 2005 à 12:00
Bonjour,

Daccords ScSami, mais mon code est fait pour enregistrer le contenu
d'un TextBox (Multiligne), dans un répertoire de son choix. J'ai fais
un oubli en copiant le code, le voici complet.



Private Sub Command1_Click()

'Définition des propriétés de la boîte de dialogue

With CommonDialog1

.DialogTitle = "Enregistrer le fichier sous..."

.CancelError = True

.Filter = "Texte(*.txt)|*.txt|Perso(*.Per)|*.Per|Tous(*.*)|*.*"

.FilterIndex = 1

.InitDir = "C:"

.FileName = "Agenda.txt"

'Définition de la routine de traitement d'erreur _

de la boîte de dialogue

On Error GoTo Annuler

.ShowSave

'Enregistre le contenu du TxetBox dans le fichier _

Agenda.txt

Open .FileName For Output As #1

Print #1, Text1.Text

Close #1

End With

MsgBox "La sauvegarde sera réalisée dans le fichier " & CommonDialog1.FileName + "."

GoTo Suite:

Annuler:

MsgBox "Vous n'avez sélectionné aucun fichier de sauvegarde"

Suite:

End Sub



jpleroisse
0
Rejoignez-nous