Comparaison de 2 tables

thibeau67 Messages postés 31 Statut Membre -  
Theo.R Messages postés 585 Statut Membre -
Bonjour,

Voilà un petit fichier excell expliquant ce que j'ai comme données et le résultat au quel je veux arriver.

Je serais super reconnaissant si quelqu'un pouvait m'aider car je ne trouve aucune astuce pour y arriver.

Merci d'avance

https://www.cjoint.com/c/FAhpfuUy83H

4 réponses

  1. thibeau67 Messages postés 31 Statut Membre
     
    Rectification : dans le resultat le 10 / B ne doit pas être là
    0
    1. Theo.R Messages postés 585 Statut Membre 31
       
      Le 7 / B devrait y être quant à lui ;)
      0
  2. Theo.R Messages postés 585 Statut Membre 31
     
    Bonjour,

    Je peux t'écrire un code VBA relativement simple qu'il suffira de copier-coller mais avant de m'y mettre j'aimerais avoir confirmation que cette solution par VBA te conviendrait :-)

    Cdt
    0
    1. thibeau67 Messages postés 31 Statut Membre
       
      Oui je suis preneur :)
      0
    2. Theo.R Messages postés 585 Statut Membre 31
       
      Voilà un code qui fonctionne pour le document que tu as posté : (supprime avant de lancer la macro les résultats que tu avais saisis toi-même ;) )


      Sub test1()

      Dim DernLigne As Long
      DernLigne = Sheets(1).Range("A" & Rows.Count).End(xlUp).Row

      m = 3
      Sheets(1).select

      For i = 3 To DernLigne

      If Range("A" & i).Value = Range("D" & i).Value And Range("B" & i).Value = Range("E" & i) Then

      Range("G" & m).Select
      ActiveCell.FormulaR1C1 = Range("A" & i).Value
      Range("H" & m).Select
      ActiveCell.FormulaR1C1 = Range("B" & i).Value

      m = m + 1
      Else
      End If
      Next i


      End Sub
      0
  3. Glen27 Messages postés 20 Statut Membre 1
     
    Bonjour,

    Sinon, à l'ancienne, tu peux mettre les formules suivantes :

    Cellule G3 : =SI(EXACT(CONCATENER(A3;B3);CONCATENER(D3;E3));A3;"")
    Cellule H3 : =SI(EXACT(CONCATENER(B3;C3);CONCATENER(E3;F3));B3;"")

    Recopie incrémentée des 2 vers le bas.

    => ça reporte le résultat quand il est identique et une case blanche s'il ne l'est pas.

    Cdt
    0
  4. thibeau67 Messages postés 31 Statut Membre
     
    Enfaite j'ai deux tables avec des articles

    La première c'est la situation de départ et la seconde la situation mise à jour.

    les articles A sont à faire et les articles B sont fait.

    Je voudrais donc superposer les deux et avoir dans la troisième table seulement les articles qu'il reste à faire et que ca me suprime les articles fait qui apparaissent dans les deux tables
    0
    1. Glen27 Messages postés 20 Statut Membre 1
       
      Bonjour Thibeau,

      Par rapport à ma proposition, il te suffit d'inverser les résultats :

      Cellule G3 : =SI(EXACT(CONCATENER(A3;B3);CONCATENER(D3;E3));"";A3)
      Cellule H3 : =SI(EXACT(CONCATENER(A3;B3);CONCATENER(D3;E3));"";B3)

      NB : je m'étais trompée dans la formule pour la cellule H3, mais celle-ci est correcte.

      Ensuite, tu peux utiliser différents filtres pour extraire seulement les cellules renseignées.

      Bonne journée,
      Cdt
      0
    2. Theo.R Messages postés 585 Statut Membre 31
       
      Etant donnée l'utilisation que tu fais de ces tableaux, en fait je te conseillerais de ne faire qu'un seul tableau avec 1 seule ligne par produit. En colonne tu peux mettre dans l'ordre les situations successives avec un champ pour la date de mise à jour pour t'y retrouver. Cela simplifierait le suivi des articles dans le temps.

      Si tu as d'autres interrogations pour revoir ton document, n'hésite pas à demander, sinon bonne continuation :-)
      0