2009-04-02 5 views
1

Tout simplement Je cherche un moyen rapide de faire ce qui suit.
Je voudrais formater une feuille de calcul Excel ci-dessous:Fusion et formatage Excel

 
     A  B  C  D 
    1 foo bat abe test 
    2 foo bat cat test 
    3 foo bat dog test 
    4 bar moo hat girl 
    5 bar moo bat girl 

pour ressembler à ceci:

 
     A  B  C    D 
    1 foo bat abe, cat, dog test 
    2 bar moo hat, bat  girl 

colonne A, B, D et ainsi de suite répète les mêmes données par série unique dans chaque rangée.
Dans chaque rangée, la colonne C sera toujours différente.
La colonne C devra être fusionnée entre elle et délimitée par des virgules.

Toutes les suggestions seraient les bienvenues.

Répondre

1

Vous pouvez utiliser VBA, mais si cela correspond à votre définition de «facile», je ne suis pas sûr. Quelque chose comme:

Range("C1").Select 
Do Until Activecell.Formula = "" 
    ''if my row matches the row below 
    If ActiveCell.Offset(0,-2).Value = ActiveCell.Offset(1,-2).Value _ 
    And ActiveCell.Offset(0,-1).Value = ActiveCell.Offset(1,-1).Value _ 
    And ActiveCell.Offset(0, 1).Value = ActiveCell.Offset(1, 1).Value Then 
     ''merge and collapse 
     Activecell.Formula = ActiveCell.Formula & ", " & _ 
          ActiveCell.Offset(1,0).Formula 
     ActiveCell.Offset(1,0).EntireRow.Delete 
    Else 
     ''Go down a row 
     ActiveCell.Offset(1,0).Select 
    End If 
Loop 

Descend dans la liste une ligne à la fois, et concaténer manuellement la valeur si la ligne semble correspondre. Sinon, ça descend juste une rangée.

+0

Ce script fonctionnera très bien pour mes besoins. Merci. – user86417

Questions connexes