Bonjour à tous,
Et d'avance merci pour les réponses.
J'ai fait des recherches, j'ai trouvé des réponses, mais qui ne fonctionne pas (soit par évolution des Os, soit par erreur de manipulation de ma part). J'ai testé automator, les différents scripts proposés sur le forum, VipRiser...
Bon, en résumé, j'ai 3443 fichier .doc ou .docx (ou sans extension apparente, bien que le Finder sait pertinemment que c'est avec word qu'il faut ouvrir ces documents). Je souhaite tous les convertir en .pdf.
Une idée M'siers Dames ?
[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" 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"
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]
J'ai essayé le script ci-dessus. Cela m'indique une erreur:
"Erreur dans Microsoft Word: missing value ne comprends pas le message "save as"
Par ailleurs, je pense avoir un problème d'extension entre les fichiers qui n'en ont pas, ceux en .doc et ceux en .docx. Mais ça ne devrait pas être le plus difficile à résoudre