Macro pdf

Bonjour,

J'ai fais des macros afin de pouvoir enregistrer en pdf, tout fonctionne bien, en revanche lorsque je passe le fichier a mes collaborateurs que cela soit sur pc ou mac, il faut que je modifie à chaque fois le chemin d’accès.

Voici un exemple de ce que j'ai fais pour le chemin d’accès :

Sub etudepdf()

'

' etudepdf Macro

'

Sheets("etude").Select

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _

"/Users/pierre/Desktop/Etude énergétique " & Range("H21").Value & " " & Range("I21").Value & ".pdf", Quality:=xlQualityMinimum, _

IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _

False

Sheets("données").Select

Range("H1").Select

End Sub

Ma question est : peut on modifier le chemin d’accès afin que cela puisse être compatible sur tous les ordinateurs (pc et mac) sans à chaque fois tout modifier.

Merci beaucoup pour votre aide.

Salut pierre3131,

Oui on peut le faire, une toute petite recherche t'aurais permis de trouver :

ActiveWorkbook.Path

Qui permet de récupérer le chemin du fichier en fonction de l'ordinateur de chacun

Bonne journée,

Baboutz

Bonjour pierre3131, Baboutz,

autre solution :

Sub etudepdf()
  Worksheets("etude").Select
  ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="/Users/" & Environ("UserName") _
    & "/Desktop/Etude énergétique " & [H21] & " " & [I21] & ".pdf", Quality:=xlQualityMinimum, _
    IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
  Worksheets("données").Select: [H1].Select
End Sub

et c'est si tes collègues ont comme toi le dossier "Etude énergétique" sur le Bureau de Windows (Desktop) ; s'ils ont mis ce dossier dans leur dossier "Mes documents", ils doivent remplacer Desktop par Documents.

dhany

dhany

Merci beaucoup pour cette réponse détaillée, du coup j'ai pu faire un copié/collé mais en revanche cela ne focntionne toujours pas car au lieu d'enregistrer le document en pdf sur le bureau ca lance une impression, je ne comprends pas pourquoi ?

Pourriez vous m'aider svp

Sub etudepdf()

'

' etudepdf Macro

'

'

Worksheets("etude").Select

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:="/Users/" & Environ("UserName") _

& "/Desktop/Etude énergétique " & Range("H21").Value & " " & Range("I21").Value & ".pdf", Quality:=xlQualityMinimum, _

IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _

False

Sheets("données").Select

Range("H1").Select

End Sub

merci

ah oui, effectivement, c'est bizarre, ça ! puisque .ExportAsFixedFormat Type:=xlTypePDF est bien une commande d'enregistrement de fichier au format pdf et pas une commande d'impression !

serait-ce qu'une autre macro est lancée et pas celle-ci ? à vérifier !

à part ça, j'ai pas d'autre idée !

dhany

As-tu essayé ce que je t'ai donné ?

Sub etudepdf()

Dim chemin as string
'
' etudepdf Macro
'
Sheets("etude").Select

chemin = ActiveWorkbook.Path

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
chemin & Range("H21").Value & " " & Range("I21").Value & ".pdf", Quality:=xlQualityMinimum, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
Sheets("données").Select
Range("H1").Select
End Sub
Rechercher des sujets similaires à "macro pdf"