電子書籍の厳選無料作品が豊富!

Sub 横から縦へ()
Dim ii As Long, i As Long
Application.ScreenUpdating = False
For ii = 2 To Cells(1, Columns.Count).End(xlToLeft).Column
i = Application.CountA(Columns(ii))
If i > 0 Then
Cells(1, ii).Resize(i).Copy Cells(Rows.Count, 1).End(xlUp).Offset(1)
End If
Next ii
Application.ScreenUpdating = True
End Sub

こちらは、B列からある記入をA列の下へと集約させるマクロです。

これで、横にずっとあるセル達をA列の縦に集約していました。
ですが、なぜかB列以降の最後の行が集約されません。


B列からずっと右の列の最後には、
-----


--------
という記述があります。(-----と--------の間に2セル開け)

上記のマクロで、
-----


--------
を集客させると、
-----
が最後になり、
--------
が集約されません。

2セル開いてるからかと思い、セルを開けずにマクロを動かしたら、
--------
が省略されて、集約されました。

まるで、
--------
を避けているかのようです。


--------
これが入らないとならないのですが、省略されると困ります。

--------
これもちゃんと集約されるようにするには、どのようにすればよいでしょうか?

エクセル2016です。
よろしくお願いいたします。

質問者からの補足コメント

  • i = Cells(Rows.Count, ii).End(xlUp).Row
    でできました。ありがとうございます。

    No.1の回答に寄せられた補足コメントです。 補足日時:2022/11/03 09:07

A 回答 (1件)

シートのレイアウトを画像で提示していただけませんでしょうか。


どこに-------があるのかもよくわかりません。
この回答への補足あり
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!