Test enregistrement !

Résolu
alias666 Messages postés 308 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 23 mars 2010 - 31 août 2006 à 09:07
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 - 31 août 2006 à 10:06
Bonjour à tous

J'ai un petit soucis sur un fichier Excel. J'ai un bouton enregistrer qui balance ce bout de code :

Sub Enregistrer_QuandClic()
    Dim NomFichier As String
    NomFichier = "c:" & Feuil1.Range("F5").Value
    NomFichier = NomFichier & ".xls"
    If Dir$("c:" & NomFichier & ".xls") = 1 Then
        ThisWorkbook.Save
    Else
        ThisWorkbook.SaveCopyAs NomFichier
    End If
    MsgBox "Sauvegarde terminée.", vbInformation, "Enregistrement"
End Sub

Ma logique est que : Quand l'utilisateur cliquera sur le bouton "Enregistrer" je voudrai que il cherche si le nom du fichier ouvert existe dans c:\ si il existe il fait un enregistrement normal sinon si ca existe pas il fait un enregistrer sous. L'erreur vient de la ligne en bleu. Sachant que dans la celulle F5 il y a toujours une valeur présente.

Merci de votre aide

_______________________ <<<< :-: 4L!@$ :-: >>>>

5 réponses

jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
31 août 2006 à 09:57
Salut,


En admettant que Feuil1.Range("F5").Value = toto

Si on suit ton code ligne a ligne
NomFichier "c:" & Feuil1.Range("F5").Value> NomFichier = "C:\toto" NomFichier NomFichier & ".xls" > NomFichier = "C:\toto.xls"
    If Dir$("c:" & NomFichier & ".xls") = 1 Then => ( Dir$("C:\C:\toto.xls.xls"

Est ce que tu trouve cela bien logique

Donc un simple Dir$(NomFichier) au lieu de Dir$("c:" & NomFichier & ".xls") devrait suffir






@+,   Ju£i?n
3
alias666 Messages postés 308 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 23 mars 2010
31 août 2006 à 10:05
En effet il y avait une ligne en trop pour finir ca marche sous cette forme :

Sub Enregistrer_QuandClic()
    Dim NomFichier As String
    NomFichier = "c:" & Feuil1.Range("F5").Value & ".xls"


    If Dir$(NomFichier) <> "" Then
        ThisWorkbook.Save
    Else
        ThisWorkbook.SaveCopyAs NomFichier
    End If
    MsgBox "Sauvegarde terminée.", vbInformation, "Enregistrement"
End Sub

Merci

_______________________ <<<< :-: 4L!@$ :-: >>>>
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
31 août 2006 à 09:24
If Dir$("c:" & NomFichier & ".xls") <> "" Then
















---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
alias666 Messages postés 308 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 23 mars 2010
31 août 2006 à 09:30
Non dsl ca ne marche pas c'était mon code de départ aussi mais c'est toujours la même erreur 52 "Nom ou N° de fichier inccorect" alors que NomFichier renvoie bien "c:\toto.xls" c'est ca que j'ai du mal a comprendre...

_______________________ <<<< :-: 4L!@$ :-: >>>>
0

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

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
31 août 2006 à 10:06
Bien vu Julien, j'avais pas percuté. Je suis pas bien réveillé ce matin.

Et dire que j'ai failli lui proposer cette solution en plus, alors que c'était déjà fait LOL

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
Rejoignez-nous