Find the first empty row after the given row number in Excel VBA

安稳与你 提交于 2021-02-07 04:35:15

问题


I need to find the first empty row number after the given row number.

please check the image below

Please check the image

for e.g: assume, my current row number is 6 then my output should be 10.


回答1:


I use CountA to see if the entire row is empty.

   Function FirstEmtpyRow(startRow As Long) As Long

        Do
            startRow = startRow + 1
            If startRow = rpws.Count Then Exit Function

        Loop Until WorksheetFunction.CountA(Rows(startRow)) = 0

        FirstEmtpyRow = startRow

    End Function



回答2:


Something like this?

function FindFirstEmpty(i as long)

while cells(i,1).value <> ""
    i = i + 1
wend

FindFirstEmpty = i

End function

Depends how you are obtaining the row from which to begin.




回答3:


Dim startRow As Long
Dim i As Long
Dim lastRow As Long
Dim sh As Worksheet


startRow = 2  'Set first row to check
Set sh = ThisWorkbook.Worksheets("Sheet1")

lastRow = sh.Cells(sh.Rows.Count, "A").End(xlUp).Row

For i = startRow To lastRow
    If sh.Cells(i, 1) = "" Then
        MsgBox "First empty row: " & i
        Exit For
    End If
Next i

Have you tried something like this?

Note: This won't show you when the last row is empty.




回答4:


You can use .End(xlDown) but you have to be careful that the immediately next cell is not blank or you could skip over it.

dim rw as long, nrw as long
rw = 6
with worksheets("sheet1")
    with .cells(rw, "A")
        if IsEmpty(.Offset(1, 0)) then
            nrw = rw + 1
        else
            nrw = .end(xldown).offset(1, 0).row
        end if
    end with
end with

debug.print nrw


来源:https://stackoverflow.com/questions/38387893/find-the-first-empty-row-after-the-given-row-number-in-excel-vba

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!