Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Tri de données depuis un CSV

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 !

jimip

XLDnaute Nouveau
Bonjour,

Aujourd'hui j'ai téléchargé un CSV qui contient dans une même cellule des données que je souhaite et d'autres que je ne souhaite pas. Les données sont séparées par des virgules.
Voici la structure CSV :

Numéro de résultat, Date, Nombre 1, Nombre 2, Nombre 3, Nombre 4, Nombre 5, Nombre 6

Concrétement cela donne : (cf piece jointe)

4131,11/11/2024,18,27,28,32,40,42


Je cherche à isoler les 6 numéros, dans une cellule pour chaque numéro. (cellule B : nombre 1 / cellule C : nombre 2 ...)


Comment faire ?


Merci
 

Pièces jointes

Bonjour Jimip

J'ai enregistré votre fichier en CSV UTF8 ,
puis dans Excel, je l'ai chargé à partir du menu Données/ A partir de CSV, et j'obtiens : 1731500155498.png
Une fois le CSV chargé il est plus simple de le trier
 
Dernière édition:
Bonjour Jimip, Scraper,
On peut le réaliser sans enregistrer un csv, mais en utilisant directement Convertir.
1- Sélectionner colonne A
2- Faire dans menu Données, Convertit
3- Sélectionner Délimité et Suivant
4- Sélectionner Virgule et Suivant
5- Sélectionner Colonne dates et sélectionner Date en format MJA
6- Faire Terminer

 
Bonjour le Fil
en partant du Fichier joint
une macro
VB:
Sub TestRecup()
With Worksheets("The_Pick_Saturday__October_13__")
      DerLgn = .Cells(.Rows.Count, 1).End(xlUp).Row
       Tablo = .Range(.Cells(2, 1), .Cells(DerLgn, 1)).Value
    
    For Lgn = 1 To UBound(Tablo, 1)
        Tbl = VBA.Split(Tablo(Lgn, 1), ",")
        DerLgn = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
        
        ' On récupére les 6 dernières valeurs de Tbl
        Dim Tbl_Recup() As Variant 
        If UBound(Tbl) >= 5 Then
            Tbl_Recup = VBA.Array(Tbl(UBound(Tbl) - 5), Tbl(UBound(Tbl) - 4), Tbl(UBound(Tbl) - 3), Tbl(UBound(Tbl) - 2), Tbl(UBound(Tbl) - 1), Tbl(UBound(Tbl)))
        Else
            Tbl_Recup = Tbl ' Si moins de 6 valeurs, on prend tout
        End If       
        ' On Colle des valeurs dans la feuille
               .Cells(DerLgn, 2).Resize(1, UBound(Tbl_Recup) + 1).Value = Tbl_Recup
    Next Lgn
End With
End Sub
Jean marie
 
- 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

Réponses
40
Affichages
2 K
Réponses
7
Affichages
733
Réponses
11
Affichages
487
Réponses
10
Affichages
836
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…