Ctplm a écrit :
Hi,
Je t'ai fait le début (extraction de tes ref), reste plus qu'à appliquer la même méthode pour le reste + mise en page et clearcontents du tableau que tu obtiens.
Pour que ce soit plus propre j'ai séparé les deux tableaux sur deux onglets, voir fichier.
Code :
- Dim Ref, Statut, Quantite As String
- Dim Com, nbLigneTest2, nbLigneData, a As Integer
- '************************************************************************
- '*
- '* Procédure principale : Extraction des ref, appel des autres sub.
- '*
- '************************************************************************
- Sub Test2()
- 'On calcule le nombre de lignes dans les tableaux.
- Call CalculNbLignes
- 'On parcourt le tableau
- For a = 3 To nbLigneData
- 'On extrait les Ref puis on boucle dessus
- Reference = Sheet3.Range("A" & a)
- Reference = Split(Reference, ";" )
- For i = 0 To UBound(Reference)
- Ref = Reference(i)
- Call Affectation
- nbLigneTest2 = nbLigneTest2 + 1
- Next i
- Next a
- End Sub
- '*******************************************************************************
- '*
- '* Cette procédure sert à remplir le tableau Test2 (tableau que l'on veut obtenir)
- '*
- '*******************************************************************************
- Sub Affectation()
- Sheet2.Range("A" & nbLigneTest2 + 1) = Ref
- Sheet2.Range("B" & nbLigneTest2 + 1) = Sheet3.Range("B" & a)
- Sheet2.Range("C" & nbLigneTest2 + 1) = Sheet3.Range("C" & a)
- Sheet2.Range("D" & nbLigneTest2 + 1) = Sheet3.Range("D" & a)
- Sheet2.Range("E" & nbLigneTest2 + 1) = Sheet3.Range("E" & a)
- End Sub
- '**************************************************************************
- '*
- '* Cette procédure sert à calculer le nombre de lignes des deux tableaux.
- '*
- '**************************************************************************
- Sub CalculNbLignes()
- Sheet2.Select
- nbLigneTest2 = Range("A65536" ).End(xlUp).Row
- Sheet3.Select
- nbLigneData = Range("A65536" ).End(xlUp).Row
- End Sub
|
http://dl.free.fr/osWWSqahG
|