2016-12-02 9 views
1

は、私はこのようにExcelを持っている:行を自動的にグループ化する方法はありますか?

Name  DOC  STATUS 
John  ID   OK 
John  ADRESS  Incomplete 
John  SURNAME Missing 
Lara  ID   OK 
Lara  ADRESS  Missing 
Lara  SURNAME Missing 
Rony  ID   OK 
Rony  ADRESS  OK 
Rony  SURNAME OK 

アイデアはあるが、名前があるため、各DOCの自分自身を3回繰り返します。行を自動的にグループ化する方法はありますか? 3行ごとにグループ化しますか?

+0

と同様に、グループどのように?ボーダーで?セルを結合します?一行で? –

+1

'Range(" A "&i:" A&i + 2).Rows.Group'を使うと、 'i'の' For'ループで3行をまとめてグループ化します。 –

+0

@TimWilkinson 、DATA-> Groupに入る –

答えて

1

Group 3行で、データが連続した行になっているため、一緒にグループ化された1行の大きな行が得られます。

一方の値のみが表示され、他方の2つが折りたたまれている場合は、2番目と3番目の行だけをグループ化する必要があります。

コード

Option Explicit 

Sub GroupEveryNRows() 

Dim i As Long, LastRow As Long 

' modify "Sheet1" to your sheet's name 
With Sheets("Sheet1") 
    ' find last row with data in Column A 
    LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row 

    ' loop from 2nd row till last row with data (assuming the first row has headers) 
    For i = 2 To LastRow Step 3 
     Range("A" & i + 1 & ":A" & i + 2).Rows.Group 
    Next i 
End With 

End Sub 
+0

それはうまくいった!どうも! –

関連する問題