Msgbox "Le fichier existe déja. Voulez vous le remplacer?" [Résolu]

mdeg 28 Messages postés mercredi 31 mars 2010Date d'inscription 29 avril 2010 Dernière intervention - 23 avril 2010 à 14:56 - Dernière réponse : mdeg 28 Messages postés mercredi 31 mars 2010Date d'inscription 29 avril 2010 Dernière intervention
- 23 avril 2010 à 15:27
Bonjour,

Je souhaiterais faire apparaître la msgbox "Le fichier existe déja voulez vous le rempacer?" lors de l'enregistrment d'un fichier si le nom est déja utilisé.
Car en effet avec le commondialog, il écrase sans rien dire le fichier présent s'il porte le même nom que la fichier à enregistrer...

J'ai ce code là, mais la il me pose la question systèmatiquement (comme ça ça force l'utilisateur à vérifier), mais j'aimerai qu'il pose la question uniquement lorsqu'un fichier porte déja le même nom.

Private Sub CmdB_Exporter_Click()
With CommonDialog1
        .DialogTitle = "selectionner un fichier" 'titre de la boite
        .FileName = "*.txt" 'on recherche un fichier d'extension txt
        .CancelError = False 'pour ne pas partir en erreur si on click sur annuler
        .FilterIndex = 2
        .flags = cdlOFNCreatePrompt And cdlOFNFileMustExist And cdlOFNOverwritePrompt
        .ShowSave
    End With

If CommonDialog1.FileName <> "" Then
reponse = MsgBox("Le fichier spécifié existe déja. Voulez-vous l'écraser?", vbYesNoCancel, "Nom de fichier déja existant")
    If reponse = vbNo Then
    CommonDialog1.ShowSave
    End If
    If reponse = vbCancel Then
    Exit Sub
    End If
    If reponse = vbYes Then
    GoTo Ecrire
    End If
End If


Ecrire:
Open CommonDialog1.FileName For Output As #1


Avez-vous une idée, une solution??

Merci
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
cs_DARKSIDIOUS 15838 Messages postés jeudi 8 août 2002Date d'inscription 4 mars 2013 Dernière intervention - 23 avril 2010 à 15:14
3
Merci
Salut,

Il faut tester toi même la présence du fichier :

Public Function isExist(Byval fileName As String)

On Error Goto inexistant

if FileLen(fileName) >= 0 Then

  Let isExist = True

end if

exit Function

inexistant:

End Function

______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Merci cs_DARKSIDIOUS 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
mdeg 28 Messages postés mercredi 31 mars 2010Date d'inscription 29 avril 2010 Dernière intervention - 23 avril 2010 à 15:27
0
Merci
Ok, génial! Merci!
Commenter la réponse de mdeg

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.