Comparaison de 2 tables

Fermé
thibeau67 Messages postés 30 Date d'inscription lundi 20 avril 2015 Statut Membre Dernière intervention 2 mai 2016 - 7 janv. 2016 à 16:06
Theo.R Messages postés 575 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 30 mars 2016 - 8 janv. 2016 à 11:47
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

A voir également:

4 réponses

thibeau67 Messages postés 30 Date d'inscription lundi 20 avril 2015 Statut Membre Dernière intervention 2 mai 2016
7 janv. 2016 à 16:08
Rectification : dans le resultat le 10 / B ne doit pas être là
0
Theo.R Messages postés 575 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 30 mars 2016 31
7 janv. 2016 à 16:26
Le 7 / B devrait y être quant à lui ;)
0
Theo.R Messages postés 575 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 30 mars 2016 31
7 janv. 2016 à 16:11
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
thibeau67 Messages postés 30 Date d'inscription lundi 20 avril 2015 Statut Membre Dernière intervention 2 mai 2016
7 janv. 2016 à 16:19
Oui je suis preneur :)
0
Theo.R Messages postés 575 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 30 mars 2016 31
7 janv. 2016 à 16:25
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
Glen27 Messages postés 19 Date d'inscription mardi 11 mars 2014 Statut Membre Dernière intervention 22 janvier 2016 1
7 janv. 2016 à 16:47
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
thibeau67 Messages postés 30 Date d'inscription lundi 20 avril 2015 Statut Membre Dernière intervention 2 mai 2016
8 janv. 2016 à 08:11
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
Glen27 Messages postés 19 Date d'inscription mardi 11 mars 2014 Statut Membre Dernière intervention 22 janvier 2016 1
8 janv. 2016 à 09:42
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
Theo.R Messages postés 575 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 30 mars 2016 31
8 janv. 2016 à 11:47
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