![]() |
Bienvenue invité ( Connexion | Inscription )
![]() |
![]()
Message
#1
|
|
![]() Adepte de Macbidouille ![]() Groupe : Membres Messages : 130 Inscrit : 21 Jan 2007 Membre no 78 760 ![]() |
Bonjour,
Je cherche un script qui pourrait enregistrer tous les destinataires et les objets de mails écrits après 20h00 dans un fichiers .txt Je bidouille un peu Applescript depuis peu, à part démarrer l'application Mail, je ne sais pas faire grand chose... Merci pour votre aide. -------------------- Ancien matériel possedé : MacBook noir Core 2 Duo 2 gHz RAM 4GB HD 500GB, MacBook blanc Core 2 Duo 2,2 gHz RAM 4GB SSD 128GB, iPod Mini Alu 4GB, iPhone 3G Black 16GB, Elgato EyeTV, Elgato Turbo.264, iPhone 4 16GB , Phone 4S 16GB, iPhone SE 32GB, HD externe LaCie 120GB.
Actuellement toujours chez : MacBook Air M1 8GB RAM 256GB SSD gris sidéral, iPad 9 64 GB gris sidéral, iPhone 11 64GB jaune, Apple Watch SE 2020, Apple TV 4K, SSD externe Crucial 1TB. |
|
|
![]() |
![]()
Message
#2
|
|
Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 266 Inscrit : 7 Dec 2013 Lieu : Ile de France Membre no 188 169 ![]() |
Bonjour,
Lorsqu'on demande à Mail de retourner la liste des emails avec certains critères, il n'y a pas d'option de tri de ces emails. Le plus simple est donc de les trier dans un tableur comme Excel. La conversion txt vers Excel se fait tout simplement via un fichier csv. Par habitude, c'est la raison pour laquelle j'ai utilisé le caractère tab (-ulation) comme séparateur de colonnes. Ce que tu peux simplifier, c'est déjà d'enrigistrer le fichier en .csv à la place du .txt. Pour ce faire, il suffit de corriger la ligne: CODE set Fichier_Log to (((path to desktop) as text) & "emails_envoyés.txt") en CODE set Fichier_Log to (((path to desktop) as text) & "emails_envoyés.csv") Enfin quant au dernier point sur le formatage, c'est l'une des joies d'Applescript: le formattage des dates !! Applescript manipule les dates en leur donnant par défaut un format explicite. Par exemple, aujourd'hui est traduit par "mardi 25 octobre 2022 16:51:06". Ce n'est pas très pratique pour Excel ![]() Il faut donc demander explicitement à utiliser le format "Short date string" qui renvoi un "25/10/2022", bien plus sympathique. Le voici ajouté dans la ligne de code du script: CODE set monTexte to monTexte & (short date string of maDate) & tab & subject of unMessage & tab & mesDestinataires & tab & return Tu remarques que ce short date string occulte la partie heure:minute:seconde. Comme tu as déjà filtré les emails pour les heures d'envoi, tu n'en as probablement pas besoin. (à moins que ...?) Maintenant, avec cette nouvelle ligne, lorsque tu ouvres le fichier dans Excel, il faut le convertir en colonnes en utilisant tab comme séparateur (ainsi 25/10/2022 restera dans une seule colonne Excel sur laquelle tu pourras trier). Il faut utiliser la fonction Excel conversion de texte en colonne. Dernière précision: le nombre de colonnes reste variable, car le nombre d'adresse destinataire est lui-même variable: Colonne C si 1 seul, C et D si il y en 2 et ainsi de suite. 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 : 1st August 2025 - 06:58 |