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 |
|
|
|
![]() |
25 Mar 2021, 13:46
Message
#2
|
|
|
Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 267 Inscrit : 7 Dec 2013 Lieu : Ile de France Membre no 188 169 |
Bonjour,
Le script ci-dessous fait ce que tu demandes. Dans le cas où des nouveaux noms de dossiers existent déjà, les dossiers ne sont pas changés, mais le script indique le nombre d'erreurs et les noms en erreur sont dans le presse papier. Code set ExcelFile to choose file with prompt "Selectionner le fichier Excel" of type {"XLSX"} tell application "Microsoft Excel" -- Le fichier contient une colonne A avec le nom de dossier 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 dossiers à renommmer" set ListeErreur to {} repeat with Ligne in maListe -- boucle sur les lignes Excel -- cherche dossier avec le nom item 1 of Ligne -- remplace le dossier avec le nom item 2 of ligne tell application "Finder" set Dossier to (every folder of folder DossierParent whose name is (item 1 of Ligne)) if (count of Dossier) = 1 then -- trouvé un dossier de ce nom try set name of (first item of Dossier) to item 2 of Ligne on error log "erreur" set end of ListeErreur to item 1 of Ligne end try log "c=" & (count of ListeErreur) 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 Pour tester, un dossier parent avec des sous dossier et un fichier Excel avec les colonnes A et B comme indiquées précédemment. Le script demande de sélectionner le fichier Excel, puis le dossier parent. Le fichier Excel s'ouvre et se ferme rapidement, juste le temps de lire les 2 colonnes. 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
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 Bonjour,
Le plus simple est effectivement de mettr... 6 Jan 2024, 08:40
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 : 3rd November 2025 - 04:07 |