- ベストアンサー
エクセルでの行のまとめ方
- エクセルでデータの塊を1行にまとめたい方法について教えてください。
- データが複数行に分かれている場合、1行目の後に2行目を貼り付ける方法を教えてください。
- データの塊とは、データが複数行に分かれているグループのことを指します。空白行が塊の間にあります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
(数式ではなく)生データが記入されているとします それぞれのカタマリは,確実に「空っぽの行」で区切られているとします。 sub macro1() dim w0 as worksheet, w as worksheet dim ha as range, h as range dim r as long, c as long set w0 = activesheet set w = worksheets.add(before:=activesheet) for each ha in w0.range("A:A").specialcells(xlcelltypeconstants).areas r = r + 1 c = 0 for each h in ha.currentregion if h <> "" then c = c + 1 w.cells(r, c).value = h.value end if next next end sub
その他の回答 (1)
- KURUMITO
- ベストアンサー率42% (1835/4283)
マクロを組まれるほどのこともないでしょう。下記のように関数で対応することができます。 例えばお示しの最初の表がA列からC列の間に1行目から下方に入力されているとします。 お求めの表をE列からJ列に表示させるとしたらE1セルに次の式を入力して右横方向にJ1セルまでオートフィルドラッグコピーしたのちに下方にもオートフィルドラッグコピーします。 =IF(OR(COLUMN(A1)>6,INDEX($A:$C,(ROW(A1)-1)*3+ROUNDUP(COLUMN(A1)/3,0),MOD(COLUMN(A1)-1,3)+1)=0),"",INDEX($A:$C,(ROW(A1)-1)*3+ROUNDUP(COLUMN(A1)/3,0),MOD(COLUMN(A1)-1,3)+1))
お礼
ありがとうございます。 うまく関数が動かなかったのですが、マクロで処理したかった理由は下記があります。 1.データの塊が数100以上ある。 2.行をまとめたいのであって、一つのセルにはまとめたくない。
お礼
ありがとうございます。 期待通りの動きになっています。 ご回答頂いたマクロを基に勉強も行います。