![]() |
Bienvenue invité ( Connexion | Inscription )
![]() |
![]()
Message
#1
|
|
Nouveau Membre Groupe : Membres Messages : 14 Inscrit : 22 Mar 2021 Membre no 213 706 ![]() |
Bonjour à tous,
Je m'adresse à vous pour trouver une solution afin de renommer en masse des dossiers depuis une liste excel sur mac. J'ai trouvé une solution depuis le web anglophone : https://www.howtoexcel.org/vba/how-to-creat...rs-from-a-list/ mais autant j'arrive à la faire fonctionner sur windows, autant impossible d'exécuter la commande avec un chemin du finder mac os. Auriez-vous des idées ou adaptation de Visual Basic à apporter ? P.S. : Je suis une bille en script/terminal/code (mais ça ne me fait pas peur d'essayer). Merci d'avance de vos réponses, Bartaba. Config : MAC OS Mojave (10.14.6) iMac (21.5-inch, Late 2015) 2,8 GHz Intel Core i5 Excel pour Mac version 16.46 |
|
|
![]() |
![]()
Message
#2
|
|
Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 266 Inscrit : 7 Dec 2013 Lieu : Ile de France Membre no 188 169 ![]() |
Re-bonjour,
Comme ça m’énervait un peu de voir cet Excel 2021 bugger autant sur AppleScript, je viens de corriger le script qui lit désormais une liste anciens noms/nouveaux noms au format csv. Petite particularité avec les csv sur Excel 2021: enregistrer au format "CSV UTF8 séparé par des virgules" donne un fichier text, séparé par des ; (point virgule) et dont la première ligne comporte quelques caractère bizarre !! Il faut enregistrer la liste Excel sous le format "CSV (séparateur point-virgule)" qui est un peu plus bas dans la liste des options de format Et voici le script: CODE property Sep : ";" -- defini le separateur de colonne du fichier csv set Fcsv to choose file with prompt "Sélectionner le fichier csv contenant les anciens noms , les nouveaux" set lignes to every paragraph of (read file Fcsv) set AppleScript's text item delimiters to {Sep} set DossierParent to choose folder with prompt "Sélectionner le dossier contenant les fichiers à renommmer" set ListeErreur to {} repeat with Ligne in lignes -- boucle sur les lignes du csv tell application "Finder" set Fichier to (every file of folder DossierParent whose name is (text item 1 of Ligne)) if (count of Fichier) = 1 then -- trouvé un Fichier de ce nom try set name of (first item of Fichier) to text item 2 of Ligne on error set end of ListeErreur to item 1 of Ligne end try end if end tell end repeat -- Ligne suivante if (count of ListeErreur) > 0 then display alert "Le script a rencontré " & (count of ListeErreur) & " erreur(s)." & return & "Voir dans le presse papier." set AppleScript's text item delimiters to "," set the clipboard to items 1 thru -1 of ListeErreur as text else display alert "Le script s'est éxécuté sans erreur." end if Cordialement -------------------- iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8 iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11 Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8 |
|
|
![]() ![]() |
Nous sommes le : 2nd August 2025 - 01:02 |