Sauvegarde automatique d'un classeur excel

momo pancho Messages postés 29 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 14 juin 2007 - 25 mai 2007 à 14:49
MAXIMO71 Messages postés 46 Date d'inscription samedi 25 mars 2006 Statut Membre Dernière intervention 7 juin 2007 - 27 mai 2007 à 14:21
Bonjour, à toute et à tous

Je souhaite effectuer la sauvegarde par N° de semaine d’un classeur Excel dans un même dossier après une demande de confirmation par oui ou non dans une pop-up.




Mon problème  : Je dois créer un nouveau classeur pour la Save à chaque confirmation par oui,  et celui-ci est vide.


À la demande d’enregistrement si je confirme par NON, on me demande quand même d’enregistrer.


Après l’enregistrement une erreur (1004 définis par l’application ou par l’objet) apparaît dans visual basic.



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




Private Sub Workbook_Open()


MsgBox "Ne pas oublier de sauvegarder dans le dossier save TN !"



 Dim Msg, Style, Title, Help, Ctxt, Response, MyString


Msg = "Souhaitez-vous enregistrer?"    ' Définit le message.


Style = vbYesNo + vbCritical + vbDefaultButton2    ' Définit les boutons.


Title = "pour enregistrer clic sur yes "    ' Définit le titre.


Help = "DEMO.HLP"    ' Définit le fichier d'aide.


Ctxt = 1000    ' Définit le contexte de



                ' la rubrique.


' Affiche le message.


Response = MsgBox(Msg, Style, Title, Help, Ctxt)


If Response = vbYes Then    ' L'utilisateur a choisi Oui.



    MyString = "Oui"    ' Effectue une action.


Else: Reponse = vbNon    ' L'utilisateur a choisi Non.



    MyString = "Non"    ' Effectue une action.


End If


Set NewBook = Workbooks.Add


Do



    fName = Application.GetSaveAsFilename


Loop Until fName <> False


fileSaveName = Application.GetSaveAsFilename( _



    fileFilter:="Text Files (*.txt), *.txt")


If fileSaveName <> False Then



    MsgBox "Save as " & fileSaveName


End If



 




'Sauvegarde la copie


ActiveWorkbook.SaveAs "C:\user\P520267\modif audit\save TN\Semaine TN.xls"


'Ferme le classeur sauvegardé


ActiveWorkbook.Close True



 




End Sub



 




Dans le même classeur je souhaite enregistrer dans un autre onglet le nombre de sélection d’un mot dans le menu déroulant de chaque cellule d’une colonne.


Ma formule =NB.SI('DETAIL DES ANOMALIES TN'!$D$29;"*SECURITE*") Cela fonctionne mai si je sup le mot dans le menu déroulant tous revient à zéro.






APPLICATION

,

AUDIT COMPLET

,

----

08 - AUDIT COMPLET

,

1

,

----

 

,

 

,

----

 

,

 

,

----

 

,

 

,

----

 

,
 


 




Mes connaissances dans ce langage sont très très limité.



 




Merci merci pour votre aide.



 




A+


 

5 réponses

SharpMao Messages postés 1024 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 7 juin 2010 69
25 mai 2007 à 15:07
Je pense que cette question aura plus sa place sur http://www.vbfrance.com/

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 60
25 mai 2007 à 15:36
C'est déplacé...















<hr />
-Blog-
0
momo pancho Messages postés 29 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 14 juin 2007
25 mai 2007 à 15:38
 


Cela est possible mais je débute en la matière et, je ne sais pas comment trouver la sulution à ce problème


Sur  http://www.vbfrance.com/ OK mais dans qu'elle rubrique ?

Merci

Amicalement, pancho
0
cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
25 mai 2007 à 19:06
Salut,

Pour info Bidou, triplons de ce message...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0

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

Posez votre question
MAXIMO71 Messages postés 46 Date d'inscription samedi 25 mars 2006 Statut Membre Dernière intervention 7 juin 2007
27 mai 2007 à 14:21
Private Sub Workbook_Open()

Response = MsgBox("Ne pas oublier de sauvegarder dans le dossier save TN !" & Chr$(13) & "Souhaitez-vous enregistrer?", vbYesNo + vbCritical + vbDefaultButton2, "pour enregistrer clic sur yes ", "DEMO.HLP", 1000)

If Response = vbYes Then    ' L'utilisateur a choisi Oui.
    ActiveWorkbook.SaveAs "C:\user\P520267\modif audit\save TN\Semaine TN.xls"
    ActiveWorkbook.Close True
Else
    ActiveWorkbook.Close False
End If
End Sub

Je ne comprend pas ton problème mais si l'utilisateur ne souhaite pas enregistrer, tu mettre False quand il ferme le fichier xls d'origine. D'autre part, si il enregistre et que le nom du fichier cible est une constante, il va écraser le précédent, est le but? Enfin, il serait souhaitable de mettre ta macro dans un boutton car si tu la met à l'ouverture, l'utilisateur va se retrouver avec un msgbox et quand il aura fait son choix le fichier se fermera, est ce le but?

MAXIMO71
PS Si la réponse vous satistait
pensez à la valider
0