Macro pour filtrer liste adresses email
Salut,
J’ai effectivement commis une erreur et la toute première adresse de la liste de la feuille à traiter n’est pas incluse dans le traitement
Pour les trois autres lignes qui ne sont pas effacées, tu n’as aucun des mots-clefs nécessaires inscrits dans ta liste. Tu as bien 3 x le mot-clef « Services », mais jamais « Service » et tu n’as ni « Policy », ni « Communications ».
Cette partie du problème est donc sous contrôle.
Tu m’as demandé maintenant d’améliorer la macro en créant à chaque fois un répertoire par domaine, ce que j’ai fait (Version V4 de hier matin). Tu ne me dis pas grand-chose à ce sujet : es-tu content du résultat, est-ce que ça correspond à ce que tu attendais ????? Et – bien que je t’ai demandé de me fournir ta liste d’exemples de récalcitrants sur la base de la nouvelle macro – tu as encore utilisé l’ancien fichier
Tu me fournis tes informations sous la forme de tranches de saucissons et j’apprends aujourd’hui que tu traites des milliers d’adresses par tranche de 2'000 (mais je ne comprends pas pourquoi tu ne les traites pas toutes en une fois, ce que la macro est tout à fait capable de faire). Avec la dernière macro fournie, les adresses triées par domaine dans des feuilles individuelles sont - comme déjà indiqué - effacées à chaque fois. Mais il est bien entendu que si c’est nécessaire, on pourrait garder les anciennes adresses triées et y ajouter les nouvelles. A toi d’exprimer clairement tes besoins.
Attention : Je t’ai déjà expliqué que dans mon dernier fichier, avec ma deuxième macro, tu ne peux plus changer le nom des feuilles ou – si tu désires les traduire en anglais – il faudrait au moins qu’elles commencent toutes par le même mot (par exemple "List") et que je transforme ma macro en conséquence.
Si tu n'as pas interrompu la macro en cours de route la première fois et si tu n'as rien modifié entre deux, c'est impossible ! Ou avais-tu effectuer un essai avec plus de 32'000 lignes en une fois ? Si c'est le cas, je dois probablement modifier ma macro en conséquence.Chounpit a écrit :bizarrement quand on fait un second passage par la macro une partie des emails sont effacés correctement
A te relire.
bonjour Yvoine
ok je comprend mieux pour le mot 'webmaster'
je n'ai pas installé la v4 parce que je n'avais pas reçu de notification pour ce message, je suis un peu débordé en ce moment entre les obligations de la vie de famille et le travail qui m'oblige à poursuivre jusqu'à 2h tous les jours.
je vais charger et installer la V4 ce matin,
je fais le nettoyage par tranche de 2000 environ car ça correspond à mes fichiers excel pour les listes et que la macro met plusieurs minutes à nettoyer, et ça me bloque Excel dont je me sers par ailleurs pour mes tableaux de bord sur mes commandes, mes clients, etc.
c'est un peu empirique j'en conviens,
désolé pour t'avoir 'agacé' avec mon suivi mais une fois encore, je suis la tête sous l'eau... ca ira mieux dans quelques jours.
j'installe la V4 et je te fais un retour dans la matinée
bien cordialement
Didier - Chounpit
Alors voici déjà la correction à propos de la ligne 1.
Sinon pas la peine de me dire que tu vas faire des essais et que tu me contacteras à nouveau. Sans nouvelle de ta part pour 3 ou 4 jours, je patiente ..... patiemment.
A te relire.
cher Yvoine
super !
je viens d'installer et de découvrir la V6
si je comprend bien la macro va créer autant de feuille par domaine pays que le nombre rencontré dans la liste à traiter
je viens de lui donner à trier une liste de 5500 adresses,
je te fais un retour après le passage par la macro, ça prend déjà 10 minutes pour 1500, donc sans doute 30' pour une grosse liste
bon déjeuner
et merci
Didier - Chounpit
je viens de tester : process pour 5000 adresses = 40 minutes, et un plantage d'excel
je dois lancer je pense des listes plus petites
je me retrouve avec une trés grande quantité de feuilles recevant les emails,
ce n'est pas exploitable car c'est réparti par 'domaine'
est-ce possible de ne prendre en compte que le dernier '.pays'
par exemple .it, .de,
il faut prévoir je pense une exception pour : .co.uk (la dénomination pour l'angleterre est en deux parties : .co.uk)
merci de ton aide
et bon appétit
DIdier
Salut,
C’est vrai que ça mouline pas mal. Par contre je n'ai pas de plantage chez moi ; n'as-tu pas été juste trop impatient
Afin de réduire un peu le temps de la macro, j’ai déjà placé des instructions au début afin d’épurer quelque peu ta liste de mots-clefs. Par exemple il est inutile de garder « Airline » si tu as déjà « Air ». Ainsi, ta liste de 321 mots est réduite à 264. Ce n’est pas grand-chose, mais c’est déjà ça.
Ensuite j’ai essayé de travailler avec des tableaux, mais le temps de traitement de 1000 adresses prend quand même environ 10 minutes chez moi. Il faut dire que 1000 adresses fois 264 mots-clefs, ça fait quand même 264'000 contrôles effectués.
Au sujet de la rapidité, je pense avoir atteint mes limites. Si tu penses que tu peux trouver mieux ailleurs, je ne me vexerais pas que tu essaies par exemple d’ouvrir un nouveau fil à ce sujet.
Mais si on continue ensemble ...
Tu me demandes de ne tenir compte que de l’extension du pays ?? Mais le 6 mai dans l’après midi …..
Yvouille a écrit :Faudrait-il plutôt chercher l’extension après le dernier point, par exemple de manière à ne pas avoir chicago.com, mais com ?
Avais-tu seulement lu mon texte ??????
J’ai maintenant modifié mon code dans ce sens. Il y a juste le problème de .uk pour lequel je n’ai rien fait pour l’instant. Mais si toutes les extensions pour l’Angleterre sont co.uk, pourquoi modifier quoi que ce soit. Si jamais reviens à la charge à ce propos.
A te relire….. seulement lorsque tu auras effectué tous les essais nécessaires
salut Yvouille
j'ai fait tourner la V7, ça a l'air effectivement plus rapide,
et c'est tout à fait satisfaisant
je comprend bien qu'il y a beaucoup de requêtes, pas de souci, je fais tourner en tâche de fond
dans la V7 il n'y a plus le tri des extensions de domaine, est-ce normal ou bien j'ai manqué quelque chose à l'installation ou dans tes messages
bien cordialement
Didier
concernant les extensions,
je ne sais pas quelle règle tu a mis dans le programme, si c'est le dernier '.' et ce qui suit, c'est pourquoi je te parlais de .co.uk
mais tu as raison, c'est logique si on gardes .uk ca classera forcément toutes les adresses .uk qui sont en fait des .co.uk
ce que je souhaite c'est avoir un nombre de feuille raisonnable (une dizaine sans doute) d'aprés les extensions les plus courantes,
est-ce possible de rassembler dans la meme feuille les adresses de langue british : .uk, .org .net .com .us
car pour leur écrire je ferai un message en anglais
au plaisir de te lire et de continuer avec toi si tu le veux bien
très cordialement
Didier - Chounpit
Re-bonjour,
Pour le tri, je pense que tu as des mots-clefs avec des espaces devant ou je ne sais quoi de ce genre. Si jamais tu dois m’envoyer ton fichier afin que je puisse voir. Faut-il prévoir la suppression des espaces inutiles dans le code ?
Pour les regroupements d’extensions, on peut bien voir, mais il faudrait que tu décides une fois pour toute (si possible) quels groupes tu veux créer. Ca risque par contre bien de ralentir encore le déroulement.
A te relire (en un seul message ?).
bonsoir cher Yvouille
oui si c'est possible de retirer les espaces devant c'est bien, j'ai constaté quelques fois ce type d'adresse, mais c'est rare <5 par fichier.
dans le style des adresses bidons, il y en a pas mal avec des séries alphanumériques sans aucun sens, ex : 264859A562B21@domaine.extension
peut on par exemple faire une règle : si >3 chiffres avant @ = action suprimer
pour les extensions :
1- un groupe pour toutes les extensions probablement en anglais, type : .org .net .uk .us .com, .au (australie), .co.za (afrique du sud), .in (inde) etc, et par defaut toutes celles qui ne sont pas dans les groupes suivant que je préfères spécifiques :
2-un groupe .it
3-un groupe .es et .ad (andorre), .mx (mexique)
4-un groupe .pt, .br (bresil)
5-un groupe .nl et .be
6-un groupe .fr
7-un groupe .ru et .ua (ukraine) et .by (biélorussie) et .lv (létonie)
8-un groupe .de et .at (autriche) et .ch
ce qui nous fait 8 groupes et 8 feuilles, à priori j'ai bien réfléchi la question et je ne changerai plus,
je suis ouvert à tes suggestions sur cette logique
question :
après le passage d'une liste par la macro et le transfert des adresses dans les feuilles correspondantes aux groupes,
est-ce cumulatif ? (c'est à dire que les adresses triées de la liste suivante s'ajoutent dans la meme feuille = idéal), ou bien je dois recopier aprés chaque scan par la macro les adresses dans des fichiers spécifiques à chaque groupe ?
je comprend bien que plus on complexifie la macro plus ca prend du temps, mais c'est du temps gagné sur des manipulations manuelles
ton aide est super précieuse
et je t'en remercie sincèrement
bonne soirée
Didier - Chounpit
Salut,
Dans le fichier ci-joint, les espaces inutiles sont supprimés dans la liste des adresses à traiter sur la feuille « Liste à traiter » (ils l'étaient déjà dans ta liste de mots-clefs
Ensuite les adresses sont réparties selon la langue dans les feuilles en place (Feuille « Allemand », « Anglais », etc.), à la suite des anciennes données. J’ai placé la date du transfert dans la colonne D. Si tu trouves ça inutile, on peut revenir en arrière. Ces feuilles de langue ne sont pas encore triées à ce moment-là.
Si tu lances deux fois la macro, tu auras donc deux fois les mêmes adresses. J’ai alors créé une autre macro qui trie ces feuilles de langue alphabétiquement puis qui supprime les lignes sur lesquelles tu as deux fois la même adresse en colonne A. La plus ancienne des inscriptions est gardée. On pourrait aussi décider de lancer cette macro - qui est très rapide - à chaque fois que tu effectues un transfert. Tes feuilles de langue seraient ainsi toujours triées et sans doublons.
A toi de dire s’il faut ajouter des feuilles de langue ou répartir différemment les domaines.
J’ai gardé l’idée de placer sur une feuille « xxx » les lignes comportant plusieurs adresses (donc peut-être plusieurs domaines différents) dans la colonne A. A toi de dire si c’est une bonne idée ou si ces adresses devraient simplement être supprimées (ou traitées afin d’en séparer les adresses ?? Mais alors la durée de la macro devra bientôt être exprimée en heures).
Peux-tu déjà tester tout ça et je regarde en parallèle, d’ici quelques jours tout au plus, ton idée avec les adresses « à numéros ».
A te relire.
Bonjour Yvouille et bon Dimanche à toi
ok j'installe la V8 et je teste cet aprés-midi
là je viens de trier n5000 et j'ai les yeux un peu fatigués
oui la date de transfert est utile
oui c'est important de retirer les doublons
si je comprend bien les macros s'enchainent l'une derrière l'autre est-ce bien celà ?
peux tu me dire si le transfert dans les feuilles d'extension par langue est cumulatif, oui si je dois copier aprés dans un autre fichier ?
repérage des séries alphanumériques : si ça doit ralentir beaucoup la macro, laisse tomber, c'est visuellement assez facile de les repérer et de les retirer manuellement
au plaisir de de relire
bien cordialement
Didier - Chounpit
je viens d'ouvir la V8 et je vois que les adresses se mettent "àla suite", donc ma question est sans objet
ainsi cette version me parait assez aboutie
je t'en remercie beaucoup
je la teste aujourd'hui et je te fait un retour
bon Dimanche
Didier
Salut,
Je t’ai demandé trois choses bien précises :
- De lire mes instructions
- De tester mes fichiers avant de répondre
- De ne pas me répondre de manière saucissonnée.
Dans tes deux derniers messages, tu n’as pas respecté mes souhaits et tu as « enfreins » ces trois règles. N’est-ce pas me montrer bien peu d’égard ?
Malgré tout, je cherche encore une solution à ton dernier souci.
Cordialement.
désolé de t'avoir froissé, mon caractère est de répondre tout de suite quand je reçois un message pour montrer à la personne que je l'ai lue, et après je fais les vérif... et je met un autre message pour donner le retour. C'est ma façon de montrer de l'égard à l'autre, et
visiblement ça ne te correspond pas.
Je fais beaucoup de choses en meme temps, le developpement de mon activité m'occupe de 8h à 2h du mat tous les jours y compris les week end et jours fériés, ainsi j'ai autant de process métier que de taches differentes, désolé de ne pas avoir été plus rigoureux sur tes '3 recommandations'... j'ai été au plus rapide pour moi et ça n'a rien à voir avec le respect pour toi.
En ce qui concerne notre relation, pas de souci, je te respecte au combien, et je pense t'avoir donné des remerciements et satisfecit sincères récurents.
Nous n'avons pas le meme caractère, j'espère un peu de compréhension de ta part, chacun agit spontanément d'après son tempérament.
bonne aprés-midi
Didier
re-bonjour Yvouille
la macro a mis 45 minutes pour trier et classer 1500 adresses
dans la pratique c'est pas génant car je fais tourner en tache de fond pendant que je fais autre chose
j'ai bien récupéré dans les feuilles les adresses correspondantes aux bons groupes d'extensions par pays
ce faisant je me rend compte que les adresses sont copiées dans la foulée du tri sur les mots clés et donc si je procède après à un tri manuel sur la liste principale, les adresses que je ne souhaite pas garder dans déjà copiées dans la feuille cumulative
donc, est-ce que tu pourrais scinder les deux procédures avec deux commandes séparée afin que je puisse suivre le process suivant :
1- tri sur mots clés = j'actionne la macro
2- je fais une relecture manuelle et éllimine les adresses indésirables non éliminées par les keywords
3- tri sur les extension = j'actionne la seconde macro
4- repérage et ellimination des doublons dans les feuilles par extension en conservant la plus ancienne rentrée
j'ai l'impression qu'avec cette modification on devrait avoir un programme abouti
merci une fois encore de ton aide précieuse
bien cordialement
Didier - Chounpit
bonjour
je suis entrain de modifier ,un tableau de gestion sur toutes l'année soit:
solde sur compte bancaire
salaire
avoir total après
dépense fixe
dépense total
total des dépenses
soldes prévisionnel
une cellule pour épargne
total de l'épargne sur toute la période de l'année
Le problème c'est de créer une macros pour les titres "salaires" dépenses fixes " je sis un peu perdus merci dem'aider
Salut Didier, Salut Climent,
@Climent
Soit le bienvenu (ou la bienvenue) sur le Forum. Tu dois absolument ouvrir un nouveau fil si tu désires qu’on réponde à ta question. Il est très délicat de mélanger deux sujets sur le même fil
@Didier
Non, je ne suis pas susceptible. Mais j’avais pris de mon temps libre afin de t’expliquer une première fois dans mon message et une deuxième fois sur mon bouton que les données étaient accumulées sur les feuilles des langues et toi – sans te donner la peine de me lire - tu me fais perdre mon temps en me posant immédiatement une question à ce propos et en m’indiquant encore quelques minutes plus tard que tu as enfin trouver la réponse tout seul. Si tu multiplies cet exemple par 3 ou 4, ça fait effectivement beaucoup. Rajoute à cela que tu ne relis pas tes textes et que je dois deviner les mots qui manquent et tu devrais comprendre ma rogne. Alors ne pousse pas le bouchon trop loin, au risque que je refuse de t’offrir plus de mon temps.
Dans le fichier ci-joint, tout le déroulement des nouvelles macros est décrit dans les boutons.
J’ai effectué de nouveaux essais de ce fichier avec 1000 adresses à traiter sur mon ordinateur professionnel. Etonnamment la première macro dure 5 à 10 secondes et la deuxième 10 à 20 secondes !!!!! Comme je ne me rappelle plus si j’ai déjà testé cette macro au travail ou non, je ne peux pas dire si ça a à voir avec l’ordinateur ou si c’est le fait d’avoir scindé les macros différemment qui fait la différence. Eventuellement que tu devrais également l'essayer sur plusieurs ordinateurs. Mais bon, une différence pareille est quand même assez inexplicable.
Amicalement.
Bonjour Yvouille
je t'écris après avoir testé minutieusement la V9
ça semble fonctionner parfaitement
pour trier 1000 adresses ça a pris 13 minutes, et pour trier les extensions 3 minutes de plus
je pense que ce n'est pas la macro qui est en cause, mais mon ordi a pas mal d'appli qui tournent en meme temps, le CPU oscille entre 100% et 52% d'utilisation selon les requêts, j'ai déjà 4Go de RAM et je ne peux pas booster plus
donc,
on a un bel outil qui répond tout à fait à notre besoin, je t'en remercie infiniment
juste un conseil :
à ton avis à quel nombre de lignes dans les feuilles d'extensions on purge en recopiant dans des listes spécifiques pour éviter d'avoir un fichier trop lourd ?
très bonne journée à toi
Didier - Chounpit
Re,
Je n'ai pas vraiment d'idée à ce sujet, mais je dirais que tant que la deuxième macro ne rame pas trop, tu peux continuer sans purger. Excel a quand même des capacités assez énormes - il me semble - et tu ne devrais normalement même pas avoir besoin de purger du tout.Chounpit a écrit :juste un conseil :
à ton avis à quel nombre de lignes dans les feuilles d'extensions on purge en recopiant dans des listes spécifiques pour éviter d'avoir un fichier trop lourd ?
Par contre tu pourrais effectuer une copie de sauvegarde de temps en temps afin d'éviter une mauvaise surprise.
Bonnes salutations.
OK
oui la capacité d'une feuille est à 65000 lignes je crois,
c'était mon idée de faire une sauvegarde de temps à autre,
de toute façon pour alimenter mon logiciel d'emailing je dois préparer des .csv d'environ 5000 adresses max,
après ça fait des envois trop lourd pour le fournisseur d'accès
donc pour ce chantier c'est terminé
tu m'a impressionné par ta maitrise d'excel, ça me fait rêver moi qui préfère maitriser et être autonome sur mes outils
connais tu par hazard une personne qui maitrise les scripts sql, je dois par ailleurs faire de l'export - import de fichiers .csv avec ma base de donnée qui tourne sous mysql.
Nous avons un magasin @shop et une database d'environ 3500 produits,
catalogue sur lequel j'ai fréquemment besoin de faire des modifications sur le contenu des tables (maintenant sur les taxes, les prix, les descriptions multilingues).
Très bonne journée à toi
très cordialement
Didier - Chounpit
Si tu as vraiment la version 2010, tel qu'indiqué dans ton profil, tu as plus d'un million de lignes à disposition par feuille
Non, malheureusement je n'en ai aucune idée. Peut-être que ça peut faire l'objet d'une nouvelle demande sur le Forum (sous "Autres questions").Chounpit a écrit :connais tu par hazard une personne qui maitrise les scripts sql,
Amicalement.