Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Intersection

3 réponses
Avatar
LargoWinch
Bonjour,

soit 2 colonnes A et B contenant une liste de valeur.
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée de l'intersection des 2 listes A et B (i.e.
avoir les valeurs contenues dans A ET B) ?
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée des élements de A qui n'existent pas dans B ?

J'ai fouillé coté fonctions BD..., mais ca ne marche pas.

Merci pour votre aide.
L.

3 réponses

Avatar
JB
Bonjour,

Fonction matricielle

Function Communs(champ1, champ2)
Set MonDico1 = CreateObject("Scripting.Dictionary")
For Each c In champ1
If Not MonDico1.Exists(c.Value) Then MonDico1.Add c.Value, c.Value
Next c
Set mondico2 = CreateObject("Scripting.Dictionary")
For Each c In champ2
If MonDico1.Exists(c.Value) Then
If Not mondico2.Exists(c.Value) Then mondico2.Add c.Value,
c.Value
End If
Next c
i = 1
Communs = Application.Transpose(mondico2.items)
End Function

http://boisgontierjacques.free.fr/fichiers/fonctionsperso/FonctionCommuns.xl s

JB
http://boisgontierjacques.free.fr

On 15 fév, 10:06, LargoWinch wrote:
Bonjour,

soit 2 colonnes A et B contenant une liste de valeur.
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée de l'intersection des 2 listes A et B (i.e.
avoir les valeurs contenues dans A ET B) ?
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée des élements de A qui n'existent pas dans B ?

J'ai fouillé coté fonctions BD..., mais ca ne marche pas.

Merci pour votre aide.
L.


Avatar
JB
En matricel:

=SI(ESTNUM(PETITE.VALEUR(SI(ESTNA(EQUIV(Liste2;Liste1;0));FAUX;EQUIV(Liste 2;Liste1;0));LIGNE(INDIRECT("1:"&LIGNES(Liste2)))));INDEX(Liste1;PETITE.VALE UR(SI(ESTNA(EQUIV(Liste2;Liste1;0));"";EQUIV(Liste2;Liste1;0));LIGNE(INDIREC T("1:"&LIGNES(Liste2)))));"")

Valider avecMaj+Ctrl+Entrée

http://boisgontierjacques.free.fr/fichiers/Matriciel/MatricielCommuns.xls

JB

On 15 fév, 10:15, JB wrote:
Bonjour,

Fonction matricielle

Function Communs(champ1, champ2)
 Set MonDico1 = CreateObject("Scripting.Dictionary")
  For Each c In champ1
    If Not MonDico1.Exists(c.Value) Then MonDico1.Add c.Value, c.Value
  Next c
  Set mondico2 = CreateObject("Scripting.Dictionary")
  For Each c In champ2
    If MonDico1.Exists(c.Value) Then
      If Not mondico2.Exists(c.Value) Then mondico2.Add c.Value,
c.Value
    End If
  Next c
  i = 1
  Communs = Application.Transpose(mondico2.items)
End Function

http://boisgontierjacques.free.fr/fichiers/fonctionsperso/FonctionCom...

JBhttp://boisgontierjacques.free.fr

On 15 fév, 10:06, LargoWinch wrote:



Bonjour,

soit 2 colonnes A et B contenant une liste de valeur.
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée de l'intersection des 2 listes A et B (i.e.
avoir les valeurs contenues dans A ET B) ?
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée des élements de A qui n'existent pas dans B ?

J'ai fouillé coté fonctions BD..., mais ca ne marche pas.

Merci pour votre aide.
L.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
LargoWinch
En matricel:

=SI(ESTNUM(PETITE.VALEUR(SI(ESTNA(EQUIV(Liste2;Liste1;0));FAUX;EQUIV(Liste2;Liste1;0));LIGNE(INDIRECT("1:"&LIGNES(Liste2)))));INDEX(Liste1;PETITE.VALEUR(SI(ESTNA(EQUIV(Liste2;Liste1;0));"";EQUIV(Liste2;Liste1;0));LIGNE(INDIRECT("1:"&LIGNES(Liste2)))));"")

Valider avecMaj+Ctrl+Entrée

http://boisgontierjacques.free.fr/fichiers/Matriciel/MatricielCommuns.xls

JB

On 15 fév, 10:15, JB wrote:
Bonjour,

Fonction matricielle

Function Communs(champ1, champ2)
Set MonDico1 = CreateObject("Scripting.Dictionary")
For Each c In champ1
If Not MonDico1.Exists(c.Value) Then MonDico1.Add c.Value, c.Value
Next c
Set mondico2 = CreateObject("Scripting.Dictionary")
For Each c In champ2
If MonDico1.Exists(c.Value) Then
If Not mondico2.Exists(c.Value) Then mondico2.Add c.Value,
c.Value
End If
Next c
i = 1
Communs = Application.Transpose(mondico2.items)
End Function

http://boisgontierjacques.free.fr/fichiers/fonctionsperso/FonctionCom...

JBhttp://boisgontierjacques.free.fr

On 15 fév, 10:06, LargoWinch wrote:



Bonjour,
soit 2 colonnes A et B contenant une liste de valeur.
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée de l'intersection des 2 listes A et B (i.e.
avoir les valeurs contenues dans A ET B) ?
Existe-t-il un moyen simple de constituer une liste (dans une colonne C
par exemple) constituée des élements de A qui n'existent pas dans B ?
J'ai fouillé coté fonctions BD..., mais ca ne marche pas.
Merci pour votre aide.
L.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -



Merci, je vais tester tout ca...