Trier des adresses mails d'un Fichier excel

[Fermé]
Signaler
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
-
Messages postés
26239
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
-
Bonjour,

J"ai un soucis avec Excel. Je m'explique, dans mon fichier excel il y a les coordonnées de personnes avec leurs nom, prénom,adresse, numéro de téléphone,mail,site personnel .... Seulement, ces données ne sont pas rangées!
Par exemple, dans la première ligne du tableau on aura la première personne avec son nom en A1, son prénom en A2,son adresse en A3, son mail en A4,son site en A5 mais dans la ligne suivante (pour la seconde personne), on aura le mail dans la première colonne (B1),le téléphone en B5, le nom en B2 etc...
Donc je voudrais faire en sorte que chaque type de données soit dans une colonne précise
Avec le nom en colonne 1 , prénom en 2,adresse en 3, téléphone en 4,mail en 5, site en 6 ...; Voila je remercie quiconque pourra me donner des informations.
Il n'est pas nécessaire de tout trier (sauf si c'est possible c encore mieux) mais en priorité le mail et le téléphone . Merci

2 réponses

Messages postés
26239
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
6 090
Bonjour
pour les N° de téléphone, il faudra nous dire en quel format ils sont entrés, je pense qu'il serait plus efficace de nous mettre à disposition sur:
http:www//cijoint.fr
en fichier avec quelques exemples de vos données mêmes bidons, mais en respectant bien:
les formats de cellule, nombre "type" de caractères dans chaque etc..
ceci afin d'utiliser les (éventuels et sous réserves) meilleurs arguments pour trier les données.
En voila déjà un exemple à adapter pour les mails:
pour l'exemple pour traiter un champ de A1 à F100:
en colonne J les mails:
en J1 à tirer vers le bas:
=RECHERCHEV("*@*";A1:F1;1;0)
us ressortira l'adresse mail en colonne J.
si certaines lignes ne comportent pas de mail, pour éviter l'affichage #N/A:
=SI(ESTERREUR(RECHERCHEV("*@*";A1:F1;1;0));"";RECHERCHEV("*@*";A1:F1;1;0))
A+ crdlmnt
ps: 2° formule corrigée, manquait une parenthèse

Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
Messages postés
26239
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
6 090
Suite du message pour essayer d'expliquer pourquoi il est important d'avoir un exemple du formatage de vos données
une solution pour les N° de téléphone

_si le N° est la seule colonne affichant seulement une valeur numérique
_si tous les N° sont à dix chiffres

1° passer les codes tel en format numérique:
_Formatez votre champ de données en standard
_entrer 1 dans une cellule hors champ
_sélectionner le champ / Collage spécial / Multiplication
les 0 du début des N° disparaissent (on va les retrouver) et les cellules vides affichent 0 c'est sans importance;

2°) en colonne H pour l'exemple H1 à tirer:
=SOMME.SI(A1:F1;">0";A1:F1)
et formater la colonne H en format "spécial" N° de téléphone.

seulement ça ne marche que si les conditions énoncées au début sont respectées!

Crdlmnt
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
24
Tout d'abord merci !! Voici un exemple du fichier que je souhaite trier
http://www.cijoint.fr/cjlink.php?file=cj201007/cijrXD3Ots.xlsx

Par contre pour l'instant c'est vraiment le bazar et je souhaiterais le trier voila tout (je peux changer les intitulés de colonnes si il le faut), je voudrais tout trier si c'est possible mais en priorité les mail et le téléphone de chaque personne/Merci d'avance
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
24
PS, ce fichier a été obtenu en récupérant les données depuis un fichier texte
Messages postés
26239
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
6 090
voila sur feuille2 de votre fichier un exemple de ce qui est possible, entre autre
mais je ne connais pas assez les informations que vous traitez pour aller plus loin. Peut être arriverez vous à utiliser le type de formule pour continuer en connaissance de cause.
http://www.cijoint.fr/cjlink.php?file=cj201007/cijidi7Zob.xlsx
crdlmnt
Messages postés
119
Date d'inscription
mardi 16 février 2010
Statut
Membre
Dernière intervention
14 juillet 2011
24
Super merci beaucoup!!! Juste deux petites choses, j'ai vu que tu avait integré une formule à chaque cellule, comment faire pour automatiser cela et ne pas avoir à le faire manuellement pour toutes les cellules en changeant a chaque fois les coordonnées de la cellule?Et autre chose , comment inclure ce même script dans un autre fichier excel ayant la même structure?
Messages postés
26239
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
22 octobre 2021
6 090
Pour ce qui est de l'incrémentation de la formule:

=SI(ESTERREUR(RECHERCHEH("*@*";Feuil1!$A2:$AC2;1;0));"";RECHERCHEH("*@*";Feuil1!$A2:$AC2;1;0))

le SI(ESTERREUR(...........)) est là pour éliminer les affichages parasites en cas de non réponse.On ne s'occupe donc que de:
=RECHERCHEH("*@*";Feuil1!$A2:$AC2;1;0) qui en fait est répétée dans les deux items

ce code cherche dans la 1° ligne du champ la valeur du texte entre "*" dans tous les cas
le $ qui apparait dans les adresses de cellules correspond au blocage des références
_$A2 pour bloquer la colonne
_A$2 pour bloquer la ligne
_$A$2 pour tout bloquer
donc, dans le cas: $A1:$AC2 il suffit:
_d'entrer la formule dans la première cellule de la colonne choisie
_de sélectionner la cellule et de cliquer sur le petit carré noir en bas à droite de la sélection
_de maintenir le clic enfoncé
_de tirer vers le bas sur la hauteur du champ.
la formule s'ajuste automatiquement sur le N° de ligne correspondant (A2; A3 ;A4 etc..
par contre la même opération en ligne ne modifie pas les références de colonne
$A2 reste $A2 $A3 reste A3 etc

par ailleurs,vous pouvez utiliser une cellule pour placer la référence cherchée, ceci vous permet d'éditer successivement plusieurs listes différentes en sauvegardant à chaque fois les éditions:

remplacez dans la formule ci dessus,mettons pour l'exemple en A1

"*@*" par "*"&A1&"*"

ainsi la colonne éditera les valeurs de votre tableau contenant le texte inscrit en A1

vous pouvez alors:
_éditer une liste dans la colonne
_sélectionner la colonne
_la copier
_faire sur une colonne vide en la sélectionnant par clic droit, un "collage spécial" et cochez "valeur"
les valeurs sans les formules seront alors enregistrées dans cette nouvelle colonne et vous pourrez changer le texte en A1 pour chercher autre chose

Quant à la mise en place dans un autre contexte, c'est difficile à décider sans le modèle.I
l faut savoir pour la formule:

=RECHERCHEH concerne une ou plusieurs lignes horizontales contiguës

"*eeee*" concerne le texte à chercher (ou "*"& cellule&"*" attention à tous les signes)
soit pour le texte dans une cellule:
guillemets/ étoile/ guillemets/Signe et/Adresse cellule/ signe et /guillemets/étoile/guillemets

Feuil1! représente le nom de la feuille où se trouvent les données, nom à faire suivre d'une apostrophe.Ce nom est inutile si votre colonne d'édition est sur la même feuille que les données

;$A2:$AC2 représente la ligne à rechercher

;1 dit à excel de trouver la valeur sur la 1° ligne du champ (là de toutes façons il n'y en a qu'une)

;0) est un code excel qui interdit à la formule d'éditer une valeur proche (surtout que dans votre cas, ça risque d'être farfelu!!)

Il n' y a plus qu'à espérer que vous vous en sortirez avec ça, sans modèle c'est bien compliqué d'être plus précis;
Bon courage et bonne chance
Crdlmnt




:

l