Rechercher et attribution de numéros

Résolu/Fermé
Zor - 4 sept. 2015 à 09:12
 Zor - 4 sept. 2015 à 10:45
Bonjour,

Je débute complètement en termes de programmation de macro sur Excel et je me confronte à des difficultés concernant la création d'un outil.

J'ai un tableau avec une liste de personnes avec nom, prénom et date de naissance. Dans ce tableau, il y a des personnes qui reviennent (même nom, même prénom et même date de naissance). Je souhaite créer une macro qui va rechercher les entrées qui reviennent avec même nom, même prénom et même date de naissance et qui va leur attribuer un numéro unique.

Ex :
DUPONT Jean 01/01/1900 Attribution du n°1
MARTIN René 02/01/1901 Attribution du n°2
MARTIN René 02/01/1901 Attribution du n°2
DUPONT Jean 01/01/1900 Attribution du n°1
DURANT Jacques 03/01/1902 Attribution du n°3

Est-ce que quelqu'un aurait une solution à me proposer ?

En vous remerciant par avance
A voir également:

5 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
4 sept. 2015 à 09:19
Bonjour

Combien de lignes environ dans ton tableau ?

les données (nom, prénom, naissance) sont elles :
-les seules
- sur 3 colonnes?
-si oui les quelles ?
- où faut il placer l'identifiant ?

au besoin:
Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
et coller le raccourci proposé (clic droit) dans le message de réponse
Dans l'attente

0
Bonjour,
Merci pour cette réponse rapide

il y a environ 14 000 lignes

il y a d'autres données que nom, prénom et ddn dans le tableau.
Les données nom, prénom et ddn sont dans 3 colonnes différentes :
la ddn est en colonne E
le nom en colonne AX
le prénom en colonne AY

L'identifiant est à placé en colonne CO pour chaque ligne de personne

Je vais essayer de voir pour mettre le classeur en ligne mais il va m'être difficile de le faire car les données sont ultra-confidentielles.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
4 sept. 2015 à 09:39
faut il ne conserver q'une seule ligne par personne ou simplement attribuer un identifiant et garder toutes les lignes ?

au besoin, inscris toi sur le site (c'est gratuit) et envoie moi le classeur (1000 lignes environ) par message personnel. le code VBA sera lui rendu public sur le forum;
0
Zor > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
4 sept. 2015 à 09:48
il faut simplement attribuer un numéro mais si l'identifiant est déjà connu il faut que cela soit le même.
Malheureusement, je pense que même par message privé je ne peux pas l'envoyer car il s'agit de données protégées par le secret médical, je vais voir ce que je peux faire.
0
Voici le fichier complètement anonymisé pour que vous puissiez avoir la trame
http://www.cjoint.com/c/EIeioz28Cy7
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
4 sept. 2015 à 10:18
Bonjour,

Faut-il que ce soit fait par macro (des formules peuvent-elles suffire ?) ?
Le tableau est-il figé ou va-t-il évoluer ?
Peut-on mélanger les lignes (pour des opérations de tri) ?

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour Zoul67,

le tableau ne devrait pas évoluer.
Je n'ai pas de préférence concernant le choix macro ou formule tant que l'attribution des numéros est automatisée
Il est tout à fait possible de trier les lignes.

Merci
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
4 sept. 2015 à 10:38
Dans ce cas, je t'explique la manip' que je ferais :
- sélectionner tout le tableau (Ctrl+A)
- trier par 3 critères (Nom, Prénom, Date de naissance)
- donner au premier patient (en ligne 2) l'identifiant 1
- en CO3, placer la formule =SI(ET(E3=E2;AX3=AX2;AY3=AY2);CO2;CO2+1) et tirer la formule vers le bas.

A+
0
Effectivement, c'est astucieux et cela semble fonctionner parfaitement.

Merci beaucoup
0