Répondre à la discussion

Bonjour,


le script avait été conçu avec word 2011 et un ancien OS.

Il y a très peu de changement a effectuer dans le script, par contre avec les nouvelles restriction de l'os à la première exécution il va te demander d'autoriser l'accès au dossier de réception des PDF.


voilà le script qui fonctionne chez moi avec word 16.36 et OS Mojave 10.14.6


[CODE]tell application "Finder"

    set cheminsource to choose folder with prompt "Sélectionnez le dossier contenant les fichiers à exporter en PDF"

    set chemincible to choose folder with prompt "Sélectionnez le dossier cible"

  

    my inspecter(cheminsource, chemincible)

end tell


on inspecter(source, cible)

    tell application "Finder"

        -- traitement des fichiers :

      

        set les_fichiers to files of source

        repeat with chaque_fichier in les_fichiers

            -- traitement d'un fichier

            tell application "Finder"

                set lefichier to chaque_fichier

                set nom to name of chaque_fichier -- recupere le nom du fichier

                set extens to document file nom in source --recupere l extension du fichier

                set lextension to name extension of extens

              

                if lextension = "docx" or lextension = "doc" then

                  

                    set sauv to AppleScript's text item delimiters --sauvegarder la variable delimiteur

                    set AppleScript's text item delimiters to {"."} --récupère la partie avant le dernier "."

                    set elements to text items of nom

                    set nomcourt to (items 1 thru -2 of elements) as string

                    set ancien_nom to nomcourt

                    set AppleScript's text item delimiters to sauv --restaurer la variable delimiteur

                  

                    set sortie to cible & ancien_nom & ".pdf" as string --défini le chemin de sortie

                  

                  

                    set extension hidden of lefichier to false -- force affichage de l'extension

                    set lefichier to chaque_fichier as string

                  

                    tell application "Microsoft Word"

                        activate

                        open file lefichier -- ouvre le fichier dans Word

                      

                        set theActiveDoc to the active document

                        save as theActiveDoc file format format PDF file name sortie

                      

                        close document nom --ferme le fichier

                    end tell

                end if

              

            end tell

        end repeat

        -- traitement des dossiers :

        set les_dossiers to folders of source

        repeat with chaque_dossier in les_dossiers

            -- traitement d'un dossier

            my inspecter(chaque_dossier)

        end repeat

    end tell

end inspecter

tell application "Finder"

    (display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})

end tell[/CODE]