IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Création script applescript avec Excel, débutant en la matière !
Options
macpiero
posté 12 Feb 2010, 14:19
Message #1


Nouveau Membre


Groupe : Membres
Messages : 33
Inscrit : 27 Sep 2008
Membre no 122 528



Bonjour,

je suis hyper débutant avec applescript et j'aimerais savoir si il était possible de créer un script pour excel pour m'éviter de répéter des opérations fastidieuses :
en fait j'utilise un fichier excel avec des listes d'élèves avec leur nom, prénom et leur note. ces liste sont séparées par du baratin sur la classe. ce que je voudrais obtenir c'est juste une liste des noms prénoms et notes au final. seules ces 3 colonnes sont encadrées, donc je voudrais supprimer toutes les lignes qui ne sont pas encadrées.
puis dans celles qui restent, remplacer des valeurs de façon automatique : par exemple les "," par des "." et les "ABS" par des "99"
et enfin effectuer le tri par ordre croissant suivant les colonnes A puis B.

voila je ne sais pas si j'ai été suffisament clair,
si quelqu'un peut m'aider merci d'avance.

Macpiero
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 13 Feb 2010, 06:01
Message #2





Guests






Bonjour,


Quelle est votre version d'Excel ?


Je ne comprends pas tout, je pourrais faire ton script si je pouvais voir le fichier original et le même fichier après les modifications.
Si vous le voulez, mettez vos fichiers comme fichiers joints dans votre prochain message.
Go to the top of the page
 
+Quote Post
macpiero
posté 13 Feb 2010, 10:23
Message #3


Nouveau Membre


Groupe : Membres
Messages : 33
Inscrit : 27 Sep 2008
Membre no 122 528



Bonjour,

merci beaucoup pour ton aide,
ma version d'excel est Microsoft Excel 2008 for mac v. 12.1.0

quelques précisions, en colonne C je ne veux obtenir que des 'points' à la place des virgules et à la place des étudiants ABS obtenir '99'
dans l'idéal, le fichier après doit se trouver en format de cellules "TEXTE" et l'enregistrer en format CSV windows.

je n'arrive pas a joindre les fichier excel en pièces jointes, mais laisse moi par message privé une adresse mail à laquelle je peux te les envoyer.

encore merci

Macpiero

voici mon adresse email :

[email protected]
Go to the top of the page
 
+Quote Post
Guest_EricaL**_*
posté 14 Feb 2010, 04:34
Message #4





Guests






Bonjour,


Voici le script :
Code
tell application "Microsoft Excel"
    set tPath to full name of active workbook
    set tPath to (text 1 thru -5 of tPath) & ".csv" -- le chemin pour le nouveau fichier CSV
    
    set region_util to used range of active sheet
    set last_Row to first row index of last cell of region_util
    set the_values to value of range ("$A$1:$C$" & last_Row)
    set NewBook to make new workbook
end tell

set t_list to {}
repeat with i in the_values
    if i does not contain "" and contents of i is not {"NOM", "Prénom", "Note"} then set end of t_list to contents of i
end repeat
set last_Row to (count t_list)
tell application "Microsoft Excel"
    tell sheet 1 of NewBook
        set value of range ("$A$1:$C$" & last_Row) to t_list
        set number format of range ("$A$1:$C$" & last_Row) to "@" -- format texte
        set row height of range ("$A$1:$C$" & last_Row) to 15
        set column width of column 1 to 15
        set column width of column 2 to 14
        set column width of column 3 to 8
        set horizontal alignment of column 3 to horizontal align center
        
        -- trie les colonnes A puis B
        sort (range ("$A$1:$C$" & last_Row)) key1 column 1 key2 column 2 order1 sort ascending with match case
        
        --remplacement de texte
        replace column 3 what "ABS" replacement "99" look at whole
        replace column 3 what "," replacement "." look at part search order by rows
        
        -- enregistrement du fichier CSV
        save as filename tPath file format CSV Windows file format
    end tell
    
    --close NewBook saving no
end tell


C'est testé avec Excel 2004, je ne sais pas si ça fonctionne avec Excel 2008.

Il y a un bogue avec le remplacement de la virgule dans un AppleScript sur Excel 2004 :
Si ça ne fonctionne toujours pas sur Excel 2008, j'ajouterai dans le script une fonction pour remplacer les virgules.
Go to the top of the page
 
+Quote Post
macpiero
posté 14 Feb 2010, 12:34
Message #5


Nouveau Membre


Groupe : Membres
Messages : 33
Inscrit : 27 Sep 2008
Membre no 122 528



encore merci je test ca et je te tiens au courant !

Ça fonctionne parfaitement je n'ai pas de bug.
merci
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 24th April 2024 - 07:49