Sub ajouterFIC()
'Recherche de la Photo
Dim Retour As Variant, Fichier$, Classeur As Workbook
Retour = Application.GetOpenFilename("All Files (*.*),*.*", Title:="Sélection du fichier", MultiSelect:=False)
If Retour <> False Then
Fichier = Retour
ActiveCell.Value = Fichier
Else
'...
End If
For Each xcell In Selection
ActiveSheet.Hyperlinks.Add Anchor:=xcell, Address:=xcell.Formula
Next xcell
Set Classeur = Workbooks.Add 'Ouvrir nouveau classeur
'Insérer la photo
Dim rng As Range, fichierimage As Variant
'Boucle pour supprimer l'ancienne image
For Each ShapeObj In ActiveSheet.Shapes
If ShapeObj.Name = "Cible" Then ShapeObj.Delete
Next ShapeObj
fichierimage = Application.GetOpenFilename(FileFilter:=" Images Files ( *.jpeg;*.jpg;*.png;*.gif), ( *.jpeg;*.jpg;*.png;*.gif), All Files, *.*", FilterIndex:=1)
If fichierimage <> False Then
Set rng = Range("D3:E8") 'Définit l'emplacement de l'image
With ActiveSheet.Shapes.AddPicture(fichierimage, False, True, 0, 0, 0, 0)
.Name = "cible"
.LockAspectRatio = False
.Left = rng.Left
.Top = rng.Top
.Width = rng.Width
.Height = rng.Height
End With
Else
MsgBox "Insertion d'image interrompue."
End If
'Enregistrer le nouveau classeur en PDF
Application.DisplayAlerts = False 'Gestion des messages d'alerte
'Enregistrer au format PDF
Dim chemin As Variant
chemin = enregistrer_sous2("pdf", "C:\Users\mathis.godu\Documents\PDF chantier\FIC")
If chemin <> False Then
chemin = Replace(chemin, ".pdf", Format(Date, "yyyy_mm_dd_"".pdf"""))
MsgBox chemin
'Classeur.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, From:=1, To:=1, OpenAfterPublish:=False
' classeur.close
End If
End Sub
Function enregistrer_sous2(Ext, dossier) As String
Dim fname As Variant
enregistrer_sous2 = Application.GetSaveAsFilename(InitialFileName:=dossier, FileFilter:="PDF Files (*." & Ext & "), *." & Ext, Title:="ENREGISTREMENT EN PDF")
End Function