Sauver correctement un fichier excel ?

cs_Jacky7 Messages postés 63 Date d'inscription mardi 13 mai 2008 Statut Membre Dernière intervention 22 juin 2011 - 20 mai 2008 à 16:22
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 - 20 mai 2008 à 18:27
Bonjour a tous,

J'ai fait un prog qui me permet d'ouvrir une feuille excel ou de la créer si elle n'existe pas puis d'écrire dedans et de la re sauvegarder avec le meme nom.
Mon problème est qu'Excel me dit a chaque enregistrement que le fichier existe déja voulez-vous le remplacer puis je doit cliquer sur oui.

Dans mon code, j'ai normalement une ligne qui evite ce genre de message mais il apparait quand meme ???

Voila mon bout de code qui enregistre :

oWk.SaveAs ("C:\bureau\Copie (6) de Copie de test programme avec 1 entrée\MonClasseur.xls")
    oExcel.DisplayAlerts = False
    oWk.Close False
    oExcel.Quit
    Set oWk = Nothing
    Set oExcel = Nothing

Est ce que quelqu'un a une idée pour y remedier ?
Merci
Jack

7 réponses

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
20 mai 2008 à 16:39
Salut
Si tu as correctement détruit le fichier avant de sauvegarder celui-là sous le même nom, tu ne devrais pas avoir ce message.
Voir fonction Dir pour vérifier son existence + Kill pour le détruire.

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

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
20 mai 2008 à 16:44
Salut,

Voir ton post aussi, pour vérife fichier(lien Jimmy)

A+
Exploreur

 Linux a un noyau, Windows un pépin
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
20 mai 2008 à 17:30
salut,

beh F1 existe sur de nombreux clavier...
Si tu regarde dans ton aide le mot DisplayAlerts, tu trouves ceci :

Lorsque la méthode SaveAs pour des classeurs est utilisée
pour remplacer un fichier existant, l'alerte de remplacement a la valeur Non par
défaut, tandis que la réponse Oui est sélectionnée par Excel lorsque la
propriété DisplayAlerts a la valeur True.

Bref, seul le bouton Oui / Non change selon ce que tu attribues à DisplayAlerts, mais tu auras obligatoirement ce message..

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
cs_Jacky7 Messages postés 63 Date d'inscription mardi 13 mai 2008 Statut Membre Dernière intervention 22 juin 2011 3
20 mai 2008 à 17:40
Re Jack,

J'ai rajouté la fonctin kill dans mon programme, mais j'ai un message d'erreur qui apparait :

Erreur d'execution 70 : Permission refusée   ??

Etant donné que je ne connais pas la fonction kill peut être l'ai-je mal écrit ou au mauvais endroit, j'ai rajouté kill juste avant de sauvegarder le fichier sur le meme nom :

    Kill App.Path & "\MonClasseur.xls"
    oWk.SaveAs App.Path & "\MonClasseur.xls"
    oExcel.DisplayAlerts = False
    oWk.Close False
    oExcel.Quit
    Set oWk = Nothing
    Set oExcel = Nothing
0

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

Posez votre question
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
20 mai 2008 à 17:44
je précise quelque chose, le message de Jack est ok, mais il va de soi que si tu executes ce code depuis CE fameux classeur, étant lui même ouvert, tu ne peux pas le supprimer

Bref, tu peux pas dire au vba du Fichier X d'effacer X

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
cs_Jacky7 Messages postés 63 Date d'inscription mardi 13 mai 2008 Statut Membre Dernière intervention 22 juin 2011 3
20 mai 2008 à 18:18
Salut Mortalino,

en fait ce qui se passe dans mon prog est très bizarre :

Lorsque je redemarre mon pc puis je lance le prog il s'execute sans aucun message (le fichier existe déja voulez-vous le remplacer ? n'existe absolument pas) tout fonctionne à merveille mais, lorsque que je stoppe le prog et que je le relance il s'execute de façon identique mais me rajoute à chaque fois le message " le fichier existe déja voulez-vous le remplacer ?"

Je ne comprend pas d'ou il peut arriver subitement ce message ??
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
20 mai 2008 à 18:27
bah en fait, je viens de tester un SaveAs sur un fichier déjà existant :

Option Explicit

Sub ezlnfl()
    Application.DisplayAlerts = False
    ThisWorkbook.SaveAs "C:\Documents and Settings\Mortalino\Bureau\Correction fonction IsBoldItalic.xls"
    Application.DisplayAlerts = True
End Sub

Je n'obtiens jamais de message...

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
Rejoignez-nous