CYRIL CAMPAS
XLDnaute Junior
Bonjour à toute la communauté ! j'écrème les forums depuis ce matin, mais impossible de trouver la solution à mon problème... Je vous explique le contexte :
dans mon entreprise, lorsque nous avons une personne qui se blesse, nous devons remplir un "template sécurité" avec différentes infos. aucune procédure précise n'étant en place à date, voici mon idée pour l'exécution de la macro :
1/ le fichier va s'enregistrer dans un dossier sur le réseau commun de l'usine (défini par "chemin") --> opération qui fonctionne.
2/ le fichier s'imprime en x exemplaire sur l'imprimante reconnue par le PC depuis lequel on travaille (par contre je ne sais pas paramétrer pour que ça sorte en couleur si l'imprimante est compatible - mais pas très grave) --> opération qui fonctionne
3/ un mail qui récapitule quelques infos est envoyé à une adresse toujours identique (= une liste de diffusion) - la je le fais avec mon adresse pour tester, opération qui fonctionne
4/ j'aimerai transformer le chemin du fichier (qui apparait à la fin de mon corps de mail) en lien hypertexte --> Je sèche complètement, je vous sollicite donc !
voici mon code, si toutefois vous aviez une idée !
Sub Archivage()
'définition des variables
Dim chemin As String
Dim fichier As String
'définition des valeurs de chaque variable
chemin = "S:\CPF\ACCES LIBRE\securite\Archivage Fiche investigation\2021\"
fichier = [D4].Value & " " & "le" & " " & [B2].Value & ".xlsm"
'Phase 1 : instruction d'archivage en tenant compte des variables
ActiveWorkbook.SaveAs Filename:=chemin & fichier
'Phase 2 : Impression du Template
ActiveSheet.PageSetup.PrintArea = "impression"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
'Phase 3 : envoi par mail à FR:Management
Dim LeMail As Variant
Set LeMail = CreateObject("Outlook.Application") 'création d'un objet Outlook
With LeMail.CreateItem(olMailItem)
.Subject = "évènement sécurité" & " " & [D4].Value
.To = "c****.c*******@***********.com"
.Body = "Bonjour à tous" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Nous avons eu un évènement sécurité ce jour le:" & " " & [B2].Value & " " & "à:" & " " & [G2].Value & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Concernant l'employé(e) :" & " " & [D4].Value & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "équipe concernée :" & " " & [G7].Value & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Plus de détails dans le template sécurité" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "P.S. : Vous retrouverez ce fichier archivé dans: & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "S:\***\ACCCES LIBRE\securite\Archivage Fiche Investigation"
'.Display
.Send
MsgBox ("Mail envoyé !")
je peux joindre le fichier ensuite si c'est utile ! merci d'avance pour vos lumières !
End With
End Sub
dans mon entreprise, lorsque nous avons une personne qui se blesse, nous devons remplir un "template sécurité" avec différentes infos. aucune procédure précise n'étant en place à date, voici mon idée pour l'exécution de la macro :
1/ le fichier va s'enregistrer dans un dossier sur le réseau commun de l'usine (défini par "chemin") --> opération qui fonctionne.
2/ le fichier s'imprime en x exemplaire sur l'imprimante reconnue par le PC depuis lequel on travaille (par contre je ne sais pas paramétrer pour que ça sorte en couleur si l'imprimante est compatible - mais pas très grave) --> opération qui fonctionne
3/ un mail qui récapitule quelques infos est envoyé à une adresse toujours identique (= une liste de diffusion) - la je le fais avec mon adresse pour tester, opération qui fonctionne
4/ j'aimerai transformer le chemin du fichier (qui apparait à la fin de mon corps de mail) en lien hypertexte --> Je sèche complètement, je vous sollicite donc !
voici mon code, si toutefois vous aviez une idée !
Sub Archivage()
'définition des variables
Dim chemin As String
Dim fichier As String
'définition des valeurs de chaque variable
chemin = "S:\CPF\ACCES LIBRE\securite\Archivage Fiche investigation\2021\"
fichier = [D4].Value & " " & "le" & " " & [B2].Value & ".xlsm"
'Phase 1 : instruction d'archivage en tenant compte des variables
ActiveWorkbook.SaveAs Filename:=chemin & fichier
'Phase 2 : Impression du Template
ActiveSheet.PageSetup.PrintArea = "impression"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
'Phase 3 : envoi par mail à FR:Management
Dim LeMail As Variant
Set LeMail = CreateObject("Outlook.Application") 'création d'un objet Outlook
With LeMail.CreateItem(olMailItem)
.Subject = "évènement sécurité" & " " & [D4].Value
.To = "c****.c*******@***********.com"
.Body = "Bonjour à tous" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Nous avons eu un évènement sécurité ce jour le:" & " " & [B2].Value & " " & "à:" & " " & [G2].Value & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Concernant l'employé(e) :" & " " & [D4].Value & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "équipe concernée :" & " " & [G7].Value & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Plus de détails dans le template sécurité" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "P.S. : Vous retrouverez ce fichier archivé dans: & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "S:\***\ACCCES LIBRE\securite\Archivage Fiche Investigation"
'.Display
.Send
MsgBox ("Mail envoyé !")
je peux joindre le fichier ensuite si c'est utile ! merci d'avance pour vos lumières !
End With
End Sub