Fusionner 2 tableaux

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

nougitch

XLDnaute Occasionnel
Bonjour,

Existe t'il une maniere de fusionner 2 tableaux ?
Disons que j'ai d'un cote (tableau 1) :
A = 1
B = 2
C = 3
Et de l'autre cote (tbaleau 2) :
B = 1
C = 2
D = 3
J'aimerais obtenir un tableau final :
A = 1
B = 3
C = 5
D = 3

Merci par avance pour votre aide.
Cdt,
 
Re : Fusionner 2 tableaux

Bonjour nougitch, (j'ai failli dire "et bienvenue!" tant ta demande semble éloignée des "us et coutumes" de cette île paradisiaque, nommée XLD)

Un petit fichier aurait mieux valu ...
Cependant, si la situation est aussi claire et limpide que celle que tu présentes, l'outil "Consolider" pourrait être indiqué. En fonction de ta version d'Excel, voir dans le menu ou dans l'onglet "Données".

En cas de problème, reviens avec un exemple un peu plus complet, en précisant la version Excel et en donnant des précisions comme "je dois faire la manipulation une fois par an" ou "je me meurs: la manip est à faire toutes les demi-heures" 🙂

Edit: hello CISCO 🙂 sorry pour le téléscopage!
 
Re : Fusionner 2 tableaux

Merci pour vos reponses.
Je m'excuse...
Vous trouverez un petit exemple en piece jointe.
Merci par avance !
 

Pièces jointes

Re : Fusionner 2 tableaux

Et petite precision, il faudrait que le tableau se rafraichisse en temps reel (sans devoir refaire la manipulation). Car je viens d'essayer la fonction "consolider", mais il me semble qu'il faille la refaire a chaque fois qu'une donnee change.

Merci par avance !
 
Re : Fusionner 2 tableaux

Bonsoir,

-Sélectionner A2:B8
=MergeMZ((E2:F5;H2:I5))
-Valider avecMaj+ctrl+entrée

Code:
Function MergeMZ(champ)
  Application.Volatile
  Set d = CreateObject("Scripting.Dictionary")
  For i = 1 To champ.Areas.Count      ' parcours des zones du champ multi-zones
    For j = 1 To champ.Areas(i).Rows.Count ' parcours des éléments d'une zone
      If champ.Areas(i).Cells(j, 1) <> "" Then
        temp = champ.Areas(i).Cells(j, 1)
        temp2 = champ.Areas(i).Cells(j, 2)
        d.Item(temp) = d.Item(temp) + temp2 ' ajout au dictionnaire (doublons éliminés)
      End If
    Next j
  Next i
  Dim b()
  ReDim b(1 To Application.Caller.Rows.Count, 1 To 2) ' table pour retour
  i = 0
  For Each c In d.keys
    i = i + 1
    b(i, 1) = c
    b(i, 2) = d(c)
  Next c
  MergeMZ = b
End Function

JB
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
452
Réponses
15
Affichages
788
Réponses
5
Affichages
481
Réponses
23
Affichages
679
Retour