Bienvenue invité ( Connexion | Inscription )
22 Mar 2021, 16:44
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 |
|
|
|
![]() |
6 Jan 2024, 08:40
Message
#2
|
|
|
Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 268 Inscrit : 7 Dec 2013 Lieu : Ile de France Membre no 188 169 |
Bonjour,
Le plus simple est effectivement de mettre tous les fichiers à plat dans un seul dossier. J'ai repris le script précédent en changeant simplement les références à des dossiers par des références à des fichiers. Ton fichier Excel doit contenir en colonne 1 les noms actuels et en colonne 2 les nouveaux noms de fichier. Attention, dans les 2 cas, AVEC leur extension ! CODE set ExcelFile to choose file with prompt "Selectionner le fichier Excel" tell application "Microsoft Excel" -- Le fichier contient une colonne A avec le nom de fichier actuel et une colonne B avec le nouveau nom open ExcelFile tell active sheet to set maListe to value of used range close window 1 -- MaListe est une liste de lignes (row) avec 2 valeurs, ancien et nouveau end tell set DossierParent to choose folder with prompt "Sélectionner le dossier contenant les fichiers à renommmer" set ListeErreur to {} repeat with Ligne in maListe -- boucle sur les lignes Excel -- cherche le fichier avec le nom item 1 of Ligne -- remplace le dossier avec le nom item 2 of ligne tell application "Finder" set Fichier to (every file of folder DossierParent whose name is (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 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 J'ai testé sur mon vieux imac27 (Excel 2011 / El Capitain) et cela fonctionne sans problème. Mais j'ai aussi testé ce vieux script sur ma machine de 2023 (24' M1) mais surtout avec Excel 2021...et là, Ô surprise, Excel ne répond plus correctement aux instructions Applescript (merci Microsoft !! grrr)...mais le reste fonctionne. ...Je savais déjà que Microsoft avait volontairement bloqué des fonctionnalités pour la version Mac, y compris des fonctionnalités exitantes dans des versions Mac antérieures, mais là, ils décrochent le ponpon de la médiocrité !!!! Si tu a une autre version Excel teste de ton côté. Si tu as une version 2021, je regarderai le script pour le faire éventuellement fonctionner avec un fichier texte csv. 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 |
|
|
|
Bartaba87 Renommer en masse des dossiers depuis une liste excel [Résolu] 22 Mar 2021, 16:44
Vincent Le plus simple : https://www.publicspace.net/ABett... 22 Mar 2021, 16:53
Bartaba87 Citation (Vincent @ 22 Mar 2021, 16:53) L... 24 Mar 2021, 20:30
Vincent Citation (Bartaba87 @ 24 Mar 2021, 20:30)... 24 Mar 2021, 22:43
baron Tu peux aussi jeter un œil là : https://forums.... 22 Mar 2021, 17:48
Bartaba87 Citation (baron @ 22 Mar 2021, 17:48) Tu ... 24 Mar 2021, 20:45
PBell Bonsoir,
Avec Applescript, cela se fait assez faci... 22 Mar 2021, 18:33
Bartaba87 Oh la la, merci à tous, je n'avais pas vu vos... 24 Mar 2021, 14:51
baron Citation (Bartaba87 @ 24 Mar 2021, 14:51)... 24 Mar 2021, 20:30
PBell Bonsoir,
Je résume donc le besoin:
1) Demander �... 24 Mar 2021, 21:16
Bartaba87 Citation (PBell @ 24 Mar 2021, 21:16) Bon... 24 Mar 2021, 21:25
Bartaba87 Bonsoir Vincent et merci pour la réponse! Je ... 24 Mar 2021, 23:41
Bartaba87 Vincent,
Merci beaucoup d'avoir insisté. Apr... 25 Mar 2021, 13:20
PBell Bonjour,
Le script ci-dessous fait ce que tu deman... 25 Mar 2021, 13:46
Bartaba87 Merci beaucoup PBell, je teste ça très vite et j... 25 Mar 2021, 22:33
Bartaba87 Bonjour PBell et désolé de se retour tardif.
Al... 29 Mar 2021, 09:08
PBell Bonjour,
Si les fichiers XL ont grisés c'est ... 30 Mar 2021, 08:25
Bartaba87 Bonjour PBell, et merci.
Le script fonctionne par... 30 Mar 2021, 09:15
mr23 Salut à tous!
Je déterre ce sujet très int... 5 Jan 2024, 20:57
PBell Re-bonjour,
Comme ça m’énervait un peu de voi... 6 Jan 2024, 11:48
mr23 Merci PBell !!
Je vais tester ça cette s... 8 Jan 2024, 09:18
PBell Bonsoir mr23,
Pas d'inquiétude pour ta quest... 8 Jan 2024, 19:47
mr23 YESSSS!!
Oh p***in, ça marche!
Merc... 17 Jan 2024, 11:11![]() ![]() |
| Nous sommes le : 2nd February 2026 - 17:51 |