Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 macro - impression pdf

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dd_76

XLDnaute Junior
Bonjour à tous,

j'ai crée une macro pour générer une feuille en pdf
mais est ce possible de lui imposer un emplacement d'enregistrement? et de lui attribuer un nom de façon automatique en fonction de certaine cellule de cette feuille?

merci a vous
 
Avez vous essayé l'hypothèse du post #9 ?
Réponse ???

1 qui ne génère que un pdf en fonction du salarié
Avec simplement ça :
VB:
Sub ExportPdfSalariéEnCours()
Dim NomFichier$
NomFichier = Replace([C6], ":", " ") & "_" & [E2] & " " & [G2] & "_" & [D2] & ".pdf" ' Nom du fichier ,à modifier
Application.StatusBar = "Traitement et export du fichier : " & NomFichier
ExportPDF NomFichier
Application.StatusBar = ""
End Sub
 

Pièces jointes

Bonjour,
j'ai testé l'hypothèse du post 9 : ça me m'ouvre bien mon sharepoint a l'endroit souhaité
j'ai donc inséré ce chemin dans la macro que tu m'a donné, la macro fonctionne, j'ai le message box qui me dit ok
mais je n'ai aucun pdf qui s'enregistre
 
j'ai repris tout a tête reposé, et tout fonctionne parfaitement
une ÉNORME merci a vous
 
tout fonctionne parfaitement
Tout ? c'est à dire ? La macro de génération de fichier ou le transfert sur Sharepoint ?
Si c'est le transfert sur Sharepoint, il serait bien pour les futurs lecteurs de modifier le titre du fil avec par ex "Génération de pdf sur Sharepoint" et de mettre la macro qui marche. Cela évitera aux futurs intéressés la même galère.
 
Dernière édition:
Bonjour à tous

Sylvain j'interviens bien après la bagarre ..... car je suis un peu moins présent sur le forum ...
J'ai cette fonction qui fonctionnait en 2023 (non tester en 2026 car je n'ai pas de sharepoint)
J'ai pas la source de ce code.

VB:
Option Explicit
 
#If VBA7 Then
Private Declare PtrSafe Function DavGetUNCFromHTTPPath Lib "Netapi32.dll" (ByVal Url As LongPtr, ByVal UncPath As LongPtr, lpSize As Long) As Long
#Else
Private Declare Function DavGetUNCFromHTTPPath Lib "Netapi32.dll" (ByVal Url As Long, ByVal UncPath As Long, lpSize As Long) As Long
#End If
 
'-----------------------------------------------------------------------------------------
' Converti un chemin SharePoint de type (http...) en chemin UNC (\\...)
' Le chemin retourné a un séparateur final si le chemin initial en avait un
'-----------------------------------------------------------------------------------------
Public Function getUNCPath(pPath As String) As String
Dim lPath As String
Dim lUncPath As String
Dim lSize As Long
lSize = 260 ' MAX_PATH
lPath = pPath & vbNullChar ' Chemin + caractère null de fin
lUncPath = Space(lSize) ' Buffer de réception
If DavGetUNCFromHTTPPath(StrPtr(lPath), StrPtr(lUncPath), lSize) = 0 Then
    ' 0 = pas d'erreur
    ' on reçoit dans lSize la taille du chemin UNC (séparateur de fin inclus)
    getUNCPath = Left(lUncPath, lSize - 1)
    ' Si le chemin initial avait un séparateur final, on en ajoute un
    If Right(pPath, 1) = "/" Or Right(pPath, 1) = "\" Then
        getUNCPath = getUNCPath & "\"
    End If
Else
    getUNCPath = pPath
End If
End Function

Sub Resultat()
CheminImport = getUNCPath(CheminImport)
End Sub

Tu devrais en faire bon ménage et il devrait aller dans ta besace comme tu dis souvent....

Bonne journée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
133
Réponses
5
Affichages
143
Réponses
15
Affichages
269
  • Question Question
Microsoft 365 Problème macro
Réponses
4
Affichages
416
Réponses
2
Affichages
216
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…