momo pancho
Messages postés29Date d'inscriptionjeudi 24 mai 2007StatutMembreDernière intervention14 juin 2007
-
25 mai 2007 à 16:55
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
25 mai 2007 à 23:58
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.
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é.
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 25 mai 2007 à 18:30
Salut,
Je n'ai pas la réponse exacte, mais je te propose déjà dans un premier temps, une boite de dialogue simplifiée, qui t'évitera toutes les déclarations ci-dessus :
Dim Rep As Boolean
Rep (MsgBox("Souhaitez-vous enregistrer ?", vbQuestion Or vbOKCancel, "Confirmation d'enregistrement") vbOK)
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 25 mai 2007 à 20:09
Salut,
Effectivement,c'est MessageBox.....
Mais je doute que notre ami, veuille réellement faire une simple copie de son fichier, car FileCopy, fait un clone de sont fichier, donc il devrait y avoir ses onglets aussi ?!
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 25 mai 2007 à 23:58
Déjà, ici, il y a un problème...
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
Donc, si Response = vbNo , tu fermes sans sauvegarde et tu quittes la Sub
ActiveWorkbook.Close False
Exit Sub
Sinon
ActiveWorkbook.Saveas "Le Chemin et le nom"
ActiveWorkbook.Close
Si, avant de sauvegarder, tu veux savoir si le fichier existe
If Dir(Chemin et nom de fichier) <> "" Then ' le fichier existe
Response = MsgBox ("Écraser le fichier existant ?", vbYesNo, "Titre")
If Response = vbNo then Exit sub ' on laisse tomber