Macro pour Extraire doublons depuis plusieurs colonnes.

Signaler
Messages postés
3
Date d'inscription
mercredi 13 avril 2005
Statut
Membre
Dernière intervention
20 mai 2008
-
Messages postés
3
Date d'inscription
mercredi 13 avril 2005
Statut
Membre
Dernière intervention
20 mai 2008
-
Bonjour,

Je dispose de deux feuilles sur Excel :

  - La premiere comporte des informations sur les clients (Nom, prénom, adresse, Numéro de facture, montant en devise et montant en dollars) et elle constitue la base de données de base.

  - La deuxième comporte également ce type de données pour les mauvais payeurs client (Nom, prénom, adresse, Numéro de facture, montant en devise seulement)

Je vouderai une macro sur excel qui me permetterai d'extraire tout les clients qui figure sur la 2ème feuille et qui ont le même montant en devises que celui figurant SOIT en devises SOIT en dollar sur la preière feuille et qu'il puisse les afficher avec l'ensemble de leur données (adresse, numéro de factures) sur une 3ème feuille !!!!!

Merci d'avance

6 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
salut,

il faut boucler sur tes deux feuilles.

dim i as integer, j as integer
dim NomTemp as string

for i = 1 to Sheets(2).Range("a1").End(xlDown).Row
    NomTemp = cells(i, 1).Value
    for j = 1 to Sheets(1).Range("a1").End(xlDown).Row
       If cells(j, 1).Value = NomTemp then
          ' action a faire si le nom correspond
       end if
    next j
next i

Voilà déjà un indice, fait différent tests
(adpate les valeurs des feuilles (sheets(?)) et des cellules (cells(i, ?))

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
3
Date d'inscription
mercredi 13 avril 2005
Statut
Membre
Dernière intervention
20 mai 2008

Merci pour ta réponse mais j'oublié de te signaler un truc : c'est que je ne suis encore qu'un débutant sur VB !!!  est ce que tu pourrai "vulgariser un peu l explication" loll !!!! J'ai pas saisi le passage :  

il faut boucler sur tes deux feuilles.

dim i as integer, j as integer
dim NomTemp as string

et aussi les i et les j est ce que je dois aussi les remplacer ?

Merci d'avance
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
non, je commente mes lignes :

for i = 1 to Sheets(2).Range("a1").End(xlDown).Row
' là la boucle
sert à faire donner comme valeur à la variable 'i' _
1, puis 2, puis 3, etc.. jusqu'à
la derniere ligne utilisée de _
la seconde feuille.

    NomTemp = Sheets(2).cells(i, 1).Value
' ici, quand i vaut 1,
NomTemp = ce qu'il y a dans la cellule A1 de _
la seconde feuille (au passage,
je viens de corriger une erreur^)

    for j = 1 to Sheets(1).Range("a1").End(xlDown).Row
' là la boucle
sert à faire donner comme valeur à la variable 'j' _
1, puis 2, puis 3, etc.. jusqu'à
la derniere ligne utilisée de _
la premiere feuille.

       If cells(j, 1).Value = NomTemp then
' Si la valeur de A1, puis A2,
puis A3, etc.. = ce qui est contenu _
dans la variable NomTemp, alors faire..
          ' action a faire si le nom
correspond
       end if
    next j
next i
~
<small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Le mieux c'est que tu test en mode pas à pas (avec F8 dans le VBE), ça execute le code ligne par ligne. Et quand tu survoles les variables avec la souris, tu as leurs valeurs au moment de l'exécution en cours (donc regarde i, j et NomTemp)

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
Messages postés
41
Date d'inscription
dimanche 23 mars 2008
Statut
Membre
Dernière intervention
16 août 2013
1
Bonjour

Tu auras aussi des informations dans la gestion des doublons dans ce tutorail : http://silkyroad.developpez.com/excel/doublons/
Messages postés
3
Date d'inscription
mercredi 13 avril 2005
Statut
Membre
Dernière intervention
20 mai 2008

merci les gars !!! c est vraiment sympa !!! je vous tienderai au courant !!!