Pb excel

oupps Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Bonjour,
Je galère pour traiter un fichier excel
Je souhaite tranposer une liste en tableau comme ci-dessous
voiture1
bleu
renault
voiture2
peugeot
rouge
coupé
etc..

pour obtenir
voiture1 bleu renault
voiture2 peugeot rouge coupé
etc
Je pensais pouvoir utiliser une boucle
mais je suis sec

Merci d'avance
Configuration: Windows XP
Internet Explorer 7.0

6 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    En respectant strictement l'exemple que tu donnes, c'est-à-dire que le libellé "voit..." reste en début de ligne, je te propose cette macro.
    Sub tableau()
    Dim lig As Long
    Dim col As Integer
    lig = 2  'modifier par la première ligne concernée
    col = 8  'modifier par la colonne concernée
    Do While Cells(lig, col).Value <> ""
        If Left(Cells(lig, col).Value, 4) <> "voit" Then
            Cells(lig - 1, Cells(lig - 1, 256).End(xlToLeft).Column + 1).Value = Cells(lig, col).Value
            Cells(lig, col).Delete
        Else
            lig = lig + 1
        End If
    Loop
    End Sub
    

    Avec VBA il faut coller la macro dans la feuille concernée ou dans un module.
    Il faut modifier la première ligne et la colonne concernées puis lancer la macro.
    0
  2. oupps Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    C'est exactment ça

    Super :)

    J'applique sur tous mes cas

    A suivre...........
    0
  3. oupps Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Le résultat attendu est au rdv
    Maintenant, je voudrais trier chaques ligne
    Je tente d'insérer les cdes ci-dessous mais pas moyen

    For i = debut To fin
    Columns("C:C").Rows(1).Select
    Selection.Sort Key1:=Columns("C:C").Rows(1), Order1:=xlAscending, Header:= _
    xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
    DataOption1:=xlSortNormal
    Next i
    0
  4. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Maintenant, je voudrais trier chaques ligne

    C'est-à-dire ???
    Tu veux trier pour chaque ligne les colonnes que tu as créées ?

    Ta macro n'a aucune raison de fonctionner comme elle est, mais la réponse à la question précédente est requise pour te répondre.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. oupps Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
     
    Mon premier pb est résolu
    Maintenant il me faut trier les lignes en ne prenant pas en compte la première colonne
    0
  7. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    il me faut trier les lignes en ne prenant pas en compte la première colonne

    Pour cela il n'y a pas besoin de macro, mais la voiture1 qui était renault risque de se retrouver ferrari ?

    tu sélectionnes les données que tu veux trier, puis menu données / trier et tu paramètre les colonnes et le sens de tri.
    0