[Résolu] Réorganisation et simplification d'un Tableau de données.

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 !

Franckxxx

XLDnaute Junior
Bonjour à tous,

Je cherche à simplifier un ancien tableau de base données pour pouvoir en faire une analyse plus simple et l'uniformiser à d'autres fichiers.

Lorsqu'il a été créé il prenais en compte chaque lots V sous différentes colonnes avec leur couts et quantités associés. J'aimerais uniformiser les lots V sous les mêmes colonnes. J'ai illustré ce que j'essaye d'atteindre dans les fichier Excel associé, je tente de transformer la feuille1 en feuille2.

Le tableau réel fait 61 colonnes et possède beaucoup de lignes (>1000) dont le nombre varie car des lignes sont ajoutées régulièrement.

J'avais commencé par effectuer des copier/coller en effectuant des filtres mais la colonne V s’avère difficile a remplir (je n'arrive pas a utiliser l'outil rechercher/remplacer sur une seule colonne) et je risque de perdre des données si elles sont rajoutées après en effectuant ses opérations.

Si quelqu'un a une idée pour résoudre ce problème, je suis preneur..
Merci à vous! 🙂
 

Pièces jointes

Dernière édition:
Re : Réorganisation et simplification d'un Tableau de données.

Bonjour Franckxxx et bonjour pierrejean

Une version un peu différente:

Code:
Sub Franckxxx()
Dim DerLig As Long, TablIni, TablFin(), i, x, z, j

Worksheets("Feuil1").Range("A1").CurrentRegion.Copy Worksheets("Feuil3").Range("A1")

    DerLig = Worksheets("Feuil3").Range("A" & Rows.Count).End(xlUp).Row
    TablIni = Worksheets("Feuil3").Range("D2:O" & DerLig)
    z = 0: x = 0

    For i = LBound(TablIni) To UBound(TablIni)
        x = x + 1
        ReDim Preserve TablFin(1 To 3, 1 To x)
        For j = 1 To 10 Step 3
            z = z + 1
            If TablIni(i, j + 2) = "OUI" Then
                TablFin(1, x) = z
                TablFin(2, x) = TablIni(i, j)
                TablFin(3, x) = TablIni(i, j + 1)
                Exit For
            End If
        Next
        z = 0
    Next
                
   Worksheets("Feuil3").Range("D2").Resize(UBound(TablFin, 2), UBound(TablFin, 1)) = Application.Transpose(TablFin)
   Worksheets("Feuil3").Columns("G:O").Delete Shift:=xlToLeft
   Worksheets("Feuil3").Range("D1:F1") = Array("V", "COUT V", "QUT V")

End Sub

A+
 
Re : Réorganisation et simplification d'un Tableau de données.

Bonjour pierrejean, bonjour Paf,

J'ai adapté les codes au fichier original et tout fonctionne parfaitement (même si j'ai mit un bout de temps a comprendre comment 😛).
Je n'ai pas aperçus de cas particuliers impliquant des erreurs.

Merci énormément pour l'aide et l'apprentissage que vous m'apportez!
Bonne soirée!! 🙂
 
- 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

Retour