Bouton de commande (contrôle ActiveX)

Résolu
Titan1601 Messages postés 3 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 6 juillet 2007 - 5 juil. 2007 à 15:58
Titan1601 Messages postés 3 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 6 juillet 2007 - 6 juil. 2007 à 11:25
Bonjour,



Je travail sur Word et j’aimerais que lorsque
je clic sur le bouton de commande (contrôle ActiveX) je puisse :



<!--[if !supportLists]-->

1.      


<!--[endif]-->
Enregistrer automatiquement mon
document Word (.doc) dans le répertoire C://Mes documents/Rapport au format .pdf



<!--[if !supportLists]-->

2.      


<!--[endif]-->
Que le document enregistré prenne
automatiquement la date et l’heure du jour

(Exemple : 05 Juillet 2007 15h30.pdf)



<!--[if !supportLists]-->

3.      


<!--[endif]-->
Et pour finir que le document
enregistré (en .pdf avec date et heure) soit envoyé automatiquement par
courrier électronique.

Pour info, je dois l’envoyer à trois personnes différentes. (par exemple à [mailto:1@1.ch 1@1.ch][mailto:2@2.ch 2@2.ch][mailto:3@3.ch 3@3.ch] )




 






Un grand merci au génie qui
trouvera cette formule magique !

5 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
5 juil. 2007 à 16:08
Bonjour....

Et... qu'as-tu au moins commencé à tenter comme code pour y parvenir ?
As-tu au moins tenté quelque manoeuvres avec l'enregistreur de macro ?
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
5 juil. 2007 à 20:28
"...Un grand merci au génie qui trouvera cette formule magique..."

Le grand génie pourrait etre toi.

Pour l'enregistrement du fichier, tu peux déjà commencer par lancer un enregistrement de macro. Tu fais ta manip une fois. Et une fois fini , tu arrete l'enregistrement et tu vas voir le code de la macro.

Pour l'envoie de mail, tu trouvera probablement pas mal de source ici ou sur Codyx traitant du sujet.

Mais au fait, tu nous as pas dis comment tu enregistrais un fichier Word au format PDF. Parce qu'au cas ou tu ne le saurait pas, il ne suffit pas de lui donner l'extension .pdf pour en faire un fichier PDF. Et Word (2003 en tout cas) ne gere pas en natif le format PDF.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
3
Titan1601 Messages postés 3 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 6 juillet 2007
5 juil. 2007 à 20:45
Voilà ou j'en suis pour l'enregistrement automatique....

Private Sub CommandButton1_Click()
ChangeFileOpenDirectory "F:\Time"
ActiveDocument.SaveAs FileName:=Format(Date, "dd") & " " & Format(Date, "mmmm") & " " & Format(Date, "yyyy") & "," & Format(Time, "hh") & "h" & ".doc"
End Sub

Si je rajoute Format(Time, "mm"), le résultat me donne même pas les minutes!
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
6 juil. 2007 à 08:23
Salut,
Le format que tu recherche est :

Private Sub CommandButton1_Click()
Dim nomFichier As String
   'ATTENTION dans ton premier post tu parles de PDF et la de DOC
   nomFichier = Format(Now, "dd mmmm yyyy hh") & "h" & Minute(Time) & ".doc"
   Call ChangeFileOpenDirectory("F:\Time")
   Call ActiveDocument.SaveAs(nomFichier)
End Sub , ----
[code.aspx?ID=41455 By Renfield]
NOTE: pour utiliser les minutes dans la fonction Format il faut utiliser nn

@+: Ju£i?n
Pensez: Réponse acceptée
3

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

Posez votre question
Titan1601 Messages postés 3 Date d'inscription jeudi 5 juillet 2007 Statut Membre Dernière intervention 6 juillet 2007
6 juil. 2007 à 11:25
Merci pour ces aides précieuses.



J’ai avancé sur mon projet, actuellement, je peux :



<!--[if !supportLists]-->

·        


<!--[endif]-->
Enregistre le document au format
date en doc (06 07 2007 11h10.doc)



<!--[if !supportLists]-->

·        


<!--[endif]-->
Enregistre le document au format
date en pdf (Time contrôle.pdf)



<!--[if !supportLists]-->

·        


<!--[endif]-->
Envoyer ce document par mail en doc (06 07 2007 11h10.doc)



Maintenant, ça parait simple, mais je rame, j’aimerais :



<!--[if !supportLists]-->

·        


<!--[endif]-->
Enregistre le document au format
date en pdf (06 07 2007 11h10.pdf et nonTime contrôle.pdf)



<!--[if !supportLists]-->

·        


<!--[endif]-->
Envoyer ce document par mail uniquement
en pdf (06 07 2007 11h10.pdf)



<!--[if !supportLists]-->

·        


<!--[endif]-->
Et si possible qu’Outlook express complète
automatiquement les 3 destinataires.



J’ai 2 boutons de commande :




Le 1er contient :






Private Sub CommandButton1_Click()



ChangeFileOpenDirectory "F:\Time"



ActiveDocument.SaveAs FileName:=Format(Date, "dd") &
" " & Format(Date, "mmmm") & " " &
Format(Date, "yyyy") & " " & Format(Time,
"hh") & "h" & Format(Time, "nn") &
".doc"



End Sub




Le 2ème contient :






Private Sub CommandButton2_Click()




   
ActiveDocument.ExportAsFixedFormat OutputFileName:= _




        "F:\Time\Time
contrôle.pdf" _




        ,
ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _




        wdExportOptimizeForPrint,
Range:=wdExportAllDocument, From:=1, To:=1, _




        Item:=wdExportDocumentContent,
IncludeDocProps:=False, KeepIRM:=True, _




       
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _




        BitmapMissingFonts:=True,
UseISO19005_1:=False




        Options.SendMailAttach =
True




        ActiveDocument.SendMail



End Sub



Merci d’avance
0
Rejoignez-nous