Lien-Hypertexes

christelle lurot

XLDnaute Nouveau
Bonjour à tous,
Malgré mais recherches, je n'est pas trouvée.
Je souhaiterais crée une macro qui enregistrerais ma page en PDF avec comme nom " Fiche de Travaille" avec l'a date du jour et le n° de la fiche qui change automatiquement comme par exemple" Fiche de Travail_29.08.2018_N°1" dans un dossier
et qui par la même occasion me crée des liens Hypertexte dans une colonne (ex: de J2 à J20) d'une autre page pour chaque PDF enregistrer.

Ne connaissant rien, j'avais trouver ce code mais il ne correspond pas tout à fait à mais attente il ne fait que me crée un PDF mais pas dans le dossier voulu.
Pourriez-vous m'aider s'il vous plaît ? et est que c'est possible ?
Merci d'avance.

Code:
Sub EnrPDF()
'
' EnrPDF Macro
' Sauvegarder la feuille en PDF
    Dim a$
    'a$ = ActiveSheet.Name
    a = Range("A1").Value
    ChDir ThisWorkbook.Path
    ActiveSheet.Select

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        ThisWorkbook.Path & "\Fiche De Travail_" & a & "_" & Format(Date, "dd-mm-yyyy") & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True

End Sub
 

Lone-wolf

XLDnaute Barbatruc
Bonjour Christelle et bienvenue sur XLD :)

Si le fichier ne va pas dans le dossier, c'est parce qu'il y a une erreur ici : "\Fiche De Travail_". En l'écrivant comme ceci, Excel considère Fiche de travail comme un dossier. Et d'après ceci " Fiche de Travail_29.08.2018_N°1", c'est le nom du Pdf.
Si c'est un dossier par contre : "\Fiche De Travail\". Et à quoi correspond a = Range("A1").Value?? :rolleyes:

Par la même, tu voudrais bien joindre le fichier en question s'il te plaît.
 
Dernière édition:

christelle lurot

XLDnaute Nouveau
Bonjour Christelle et bienvenue sur XLD :)

Si le fichier ne va pas dans le dossier, c'est parce qu'il y a une erreur ici : "\Fiche De Travail_". En l'écrivant comme ceci, Excel considère Fiche de travail comme un dossier. Et d'après ceci " Fiche de Travail_29.08.2018_N°1", c'est le nom du Pdf.
Si c'est un dossier par contre : "\Fiche De Travail\". Et à quoi correspond a = Range("A1").Value?? :rolleyes:

Par la même, tu voudrais bien joindre le fichier en question s'il te plaît.

Merci, ha d'accord , Je voudrais que les fiches PDF vont dans un dossier nommée PDF qui est lui même dans un dossier nommée Fiche de Travail.
a = Range("A1").Value c'est le" N°_" de la fiche
Voilà le fichier en question.
 

Pièces jointes

  • Fiche de travail.xlsx
    15.1 KB · Affichages: 26

Lone-wolf

XLDnaute Barbatruc
Re Christelle

En colonne H j'ai mis Documents à la place de lien, ici il y sera inscrit que le nom du fichier. Quand tu voudra en ouvrir un, clique sur la cellule correspondante. Pour le nom du fichier il sera inscrit comme ceci Fiche de Travail_N°1_du _29-08-2018. À chaque nouveau pdf, la cellule à 1 va s'incrémenter.
 

Pièces jointes

  • Fiche de travail.xlsm
    24.5 KB · Affichages: 27

christelle lurot

XLDnaute Nouveau
Re Christelle

En colonne H j'ai mis Documents à la place de lien, ici il y sera inscrit que le nom du fichier. Quand tu voudra en ouvrir un, clique sur la cellule correspondante. Pour le nom du fichier il sera inscrit comme ceci Fiche de Travail_N°1_du _29-08-2018. À chaque nouveau pdf, la cellule à 1 va s'incrémenter.

Re
Quand j'ai voulus essayer il m'a dit qu'il y avais une erreur avec
"ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Chemin & nom & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True"
et il m'ouvre un autre excel m'a mais sans m'a deuxième page
 

Lone-wolf

XLDnaute Barbatruc
Re

Supprime le fichier téléchargé et reprends celui-ci. Normalement le 2ème classeur est fermé sans enregistrer. Chez moi je n'ai pas ce problème.

Edit: il faut supprimer le s à Fiche, désolé. Mais normalement c'est avec s, vu que tu as plusieurs fichiers pdf. Regarde aussi Fiche de, dans le premier message c'est Fiche De.
 
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Re Christelle

@christelle lurot

Ici tu as mis toutes versions excel, mais tu as qu'elle version d'excel au juste?

En pj les 3 fichiers créés.
 

Pièces jointes

  • Fiche de Travail N°1 du 29-août-2018.pdf
    368.5 KB · Affichages: 22
  • Fiche de Travail N°2 du 29-août-2018.pdf
    368.5 KB · Affichages: 16
  • Fiche de Travail N°3 du 29-août-2018.pdf
    369.8 KB · Affichages: 20

christelle lurot

XLDnaute Nouveau
Re
Je viens de voir que j'était en version 2013 :D haha et j'e me suis permise de modifier un peu le code, tout est bon sauf qu'il ne me crée pas de lien Hypertexte pour le diriger vers les PDF

Code:
Sub Cree_Pdf()
Dim Chemin$, nom$, num$, txt$

    Application.ScreenUpdating = False
    With Feuil1
        .Activate
        .Range("s2") = .Range("s2") + 1
        .Range("a1") = "N°" & .Range("s2")
        num = .Range("a1").Value
    End With

    ActiveSheet.Copy
    Chemin = ThisWorkbook.Path & "\partage\FICHE DE TRAVAIL\PDF\"
    nom = "Fiche De Travail_" & num & "_ du _" & Format(Date, "dd-mm-yyyy")

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="\partage\FICHE DE TRAVAIL\PDF\" & "\Fiche De Travail_" & a & num & Format(Date, "_dd-mm-yyyy") & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True


    With Feuil2
        lig = .Cells(Rows.Count, "H").End(xlUp).Row + 1
        .Cells(lig, "H") = nom
    End With

    ActiveWorkbook.Close False
End Sub

Public Function OuvrirFichier(MonFichier As String)

    On Error GoTo OuvertureFichierErreur

    'vérifie si le fichier existe
    If Len(Dir(MonFichier)) = 0 Then
        OuvrirFichier = False
        Exit Function
    Else
    End If

    'ouvre le fichier dans son application associée
    Dim MonApplication As Object
    Set MonApplication = CreateObject("Shell.Application")

    MonApplication.Open (MonFichier)
    OuvrirFichier = True
    Set MonApplication = Nothing

    Exit Function
OuvertureFichierErreur:
    Set MonApplication = Nothing
    OuvrirFichier = False
End Function
 

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 883
Membres
103 014
dernier inscrit
moimoi31