• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2013のVBA最終行取得結合表複数あり)

Excel2013のVBAで複数の結合表から最終行を取得する方法

このQ&Aのポイント
  • Excel2013のVBAで複数の結合表から上側の表の最終行を取得する方法を教えてください。
  • 表の上側には結合セルがあり、取得方法がわからない状況です。
  • A1からA100までの結合セルの中で最後の単体セルであるA101を取得する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • weboner
  • ベストアンサー率45% (111/244)
回答No.2

一例です Range("A1").Select MaxRow = Selection.Offset(Rows.Count - 1, 0).End(xlUp).Address StRow = Selection.End(xlDown).Address For Each l In Range(StRow & ":" & MaxRow) If Not l.MergeCells Then Exit For End If Next l.Select

hinoki24
質問者

お礼

試してみました。思い通りにできました。どうもありがとうございました。

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! >結合セルには、何らかの値が入力されています >上側の表の最終行にあたるA101を取得したいと思っているのですが すなわちA列の最初のデータ入力セルから検索して、結合セルが途切れた次の行を取得するようにしてみました。 A101セルは結合していない!という前提です。 Sub Sample1() Dim i As Long, cnt As Long For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row If Cells(i, "A").MergeCells Then cnt = i Exit For End If Next i Do Until Not Cells(cnt, "A").MergeCells cnt = cnt + 1 Loop With Cells(cnt, "A") .Select MsgBox .Address(False, False) End With End Sub こんな感じではどうでしょうか?m(_ _)m

hinoki24
質問者

お礼

どうもありがとうございました。 思い通りにできました。

  • weboner
  • ベストアンサー率45% (111/244)
回答No.1

提示された条件なら A3セルから下方向に Cell.MergeCells の返り値がFalseのセルを探せばいいのでは? その次の同状態のセルを取得する場合は End(xlDown) で一旦したのブロックまで下がってから再度検索していけばいい

hinoki24
質問者

お礼

どうもありがとうございました。

関連するQ&A