Synthétiser des données en réduisant le nombre de ligne

Bonjour,

Pour sur, l'intitulé du sujet n'est pas très clair... Mais quand vous verrez quelle est ma problématique, vous vous direz que c'était peut être bien résumé ... ou pas...

J'ai un tableau de 2 colonnes (A et B). J'ai 5000 lignes environ.

Dans la colonne A sont rangées des références de produit.

Dans la colonne B des tarifs enregistrés.

Il se peut que pour une même référence j'ai plusieurs tarifs enregistrés.

Ce qui donne :

REF ---------- TARIF

11121 ---------- 31,14

11140 ---------- 21,50

4103 ---------- 19,26

4103 ---------- 29,55

11151 ---------- 12,20

110006 ---------- 6,20

110006 ---------- 7,12

110006 ---------- 7,25

Dans cet exemple, on voit que la référence 4103 renvoie vers 2 tarifs différents, la réf 110006 vers 3...

J'aimerais afin de faciliter la lecture de mon document à mes commerciaux, n'avoir qu'une ligne par référence et plusieurs colonnes pour les tarifs différents.

Cela donnerait quelque chose comme ça :

REF ---------- TARIF1 ------ TARIF2 ------ TARIF3

11121 ---------- 31,14

11140 ---------- 21,50

4103 ---------- 19,26 ---------- 29,55

11151 ---------- 12,20

110006 ---------- 6,20 ---------- 7,12 ---------- 7,25

Est-ce que cela peut se faire simplement avec une fonction ? (même en plusieurs étapes)

Ou dois-je forcément passer par une macro ?

Dans les 2 cas, pouvez vous m'orienter svp ?

Merci par avance pour le partage de votre science.

Excellement,

Bonjour,

Je pense qu'il faille passer par du VBA

mais rassure-toi, çà ne mord pas !

il faudra trier la colonne "REF"

envoie le fichier en ne gardant que quelques lignes représentatives

Amicalement

Claude

Merci Claude !

Ci-joint une partie du fichier.

18classeur6.xls (15.00 Ko)

re,

Comme je ne tiens pas à recommencer, c'est bien la structure réelle ?

je veux dire que le tableau est bien en A1:B à la fin ?

et rien dans les autres colonnes ?

confirme

Claude

oui, le tableau est structuré comme tu le vois.

J'ai juste supprimé les 3950 lignes qui suivaient...

Merci

ok, je regarde

repasse dans la soirée

Claude

Merci beaucoup

re,

essaye avec

Sub Dedouble()
Dim Lg%, i%, Cl As Byte, x As Byte
'Macro par Claude Dubois pour "jek69" Excel-Pratique le 17/06/10
Application.ScreenUpdating = False
    Lg = Range("A65536").End(xlUp).Row
    '--- tri ---
    Range("a2:b" & Lg).Sort Key1:=Range("a2"), Order1:=xlAscending, _
    Header:=xlYes, OrderCustom:=1, MatchCase:=False

        For i = 2 To Lg
            Cl = 3
            x = 0
            Do While Cells(i + 1, 1) = Cells(i, 1)
                Cells(i - x, Cl) = Cells(i + 1, 2)
                Cells(i + 1, 2).Clear
                Cl = Cl + 1
                i = i + 1
                x = x + 1
            Loop
        Next i
    Range("b2:b" & Lg).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub

Amicalement

Claude

Nickel !

Merci beaucoup Claude

Prends le bon réflexe en clôturant les postes

c'est ici

a resolu2
Rechercher des sujets similaires à "synthetiser donnees reduisant nombre ligne"