![]() |
Bienvenue invité ( Connexion | Inscription )
![]() |
![]()
Message
#1
|
|
Nouveau Membre Groupe : Membres Messages : 1 Inscrit : 6 Feb 2025 Membre no 220 256 ![]() |
Bonjour à toutes et tous,
Je souhaiterais utiliser AppleScript pour transformer un fichier .csv. Afin de rendre les choses facilement compréhensibles je joins deux fichiers: 1- Le fichier d’origine au format csv 2- Le fichier tel que je le souhaiterai après être passé dans le script. Voici les étapes à réaliser 1-Ouverture du fichier dans numbers. (Information: Le fichier se situe dans le dossier téléchargement) 2-Suppression des 6 premières lignes 3-Suppression de toutes formes de style de police et de couleur de cellule 4-Rassembler toutes les cellules de la colonne nature de l’opération d’une même opération appartenant à la même date dans la première cellule de l’opération, la suppression de tous les espaces du texte n’est pas nécessaire, et ce pour chacune des opérations. 5- Supprimer toutes les lignes vides. J’espère avoir réussi à exposer clairement ma demande. Si quelqu’un parmi vous avait les connaissances suffisantes pour réaliser cela, si toute fois c’était réalisable, je serait très reconnaissant de pourvoir bénéficier de son aide pour l’écriture du script. Par avance merci
Fichier(s) joint(s)
|
|
|
![]() |
![]()
Message
#2
|
|
Adepte de Macbidouille ![]() Groupe : Membres Messages : 184 Inscrit : 15 Mar 2008 Lieu : Lorraine Membre no 110 156 ![]() |
Bonjour,
Tu peux essayer ça (fait en vitesse, pas optimisé !) Tu ouvres ton fichier csv avec numbers et tu lances le script. Il crée un nouvelle feuille et copie les mouvements en concatennant les "nature de l'opération" Code --créer une nouvelle feuille
tell application "Numbers" activate tell document 1 make new sheet tell active sheet delete every table set thesheet to make new table with properties {row count:2, column count:7} end tell end tell -- copier les titres de colonnes set colonne to {"A", "B", "C", "D", "E", "F", "G"} repeat with i from 1 to 7 set lacolonne to item i of colonne tell the first table of sheet 1 of front document set titre to value of cell (lacolonne & "7") end tell tell the first table of sheet 2 of front document set value of cell (lacolonne & "1") to titre end tell end repeat end tell set laligne to 8 set laligneplus to 8 set laligneB to 2 tell application "Numbers" activate tell the first table of sheet 1 of front document set nbligne to count row end tell end tell -- Concatenner et copier les mouvements tell application "Numbers" activate repeat if laligne > nbligne then exit repeat tell the first table of sheet 1 of front document set ladate to value of cell ("A" & laligne) set nature to value of cell ("B" & laligne) repeat set laligneplus to laligneplus + 1 if laligneplus > nbligne then exit repeat set x to value of cell ("A" & laligneplus) if x is missing value then set nature to nature & " " & value of cell ("B" & laligneplus) else exit repeat end if end repeat set debit to value of cell ("c" & laligne) set credit to value of cell ("D" & laligne) set devise to value of cell ("E" & laligne) set datevaleur to value of cell ("F" & laligne) set libelle to value of cell ("G" & laligne) end tell tell the first table of sheet 2 of front document set value of cell ("A" & laligneB) to ladate set value of cell ("B" & laligneB) to nature set value of cell ("C" & laligneB) to debit set value of cell ("D" & laligneB) to credit set value of cell ("E" & laligneB) to devise set value of cell ("F" & laligneB) to datevaleur set value of cell ("G" & laligneB) to libelle add row below last row end tell set laligneB to laligneB + 1 set laligne to laligneplus end repeat tell the first table of sheet 2 of front document set value of cell ("A" & laligneB) to ladate set value of cell ("B" & laligneB) to nature set value of cell ("C" & laligneB) to debit set value of cell ("D" & laligneB) to credit set value of cell ("E" & laligneB) to devise set value of cell ("F" & laligneB) to datevaleur set value of cell ("G" & laligneB) to libelle end tell end tell Ce message a été modifié par Zeltron54 - 7 Feb 2025, 19:11. -------------------- Imac 27 I7 Fusion drive fin 2013 Ram 8Go Mac OS X (10.14.6)
MacBook Pro 15 pouces mi-2012 8Go Ram Mac OS X (10.14.6) Imac 24 M3 2023 Ram 24Go macOS Sequoia 15.4.1 |
|
|
![]() ![]() |
Nous sommes le : 18th July 2025 - 07:55 |