如何使用VBA循环遍历空行的数据?
我试图通过非连续的数据循环 – 基本上遍历所有在Range("K:M")
有价值的单元格考虑到数据之间可能有一些空行,我将需要跳过和移动在Range("H4")
上合并3个单元格到1 。
尝试不同的方法,但每次它击中空行停止。 下面更像是一个无限循环,它是我所需要的,但是在没有更多数据的时候,如何在某个时候突然出现。
Sub GenerateStyleFabricColourV2() Dim srcData As Range Dim RowNum As Long RowNum = 4 Set srcData = Range("K:M") If Not IsEmpty(srcData.Value) Then Do While IsEmpty(RowNum) = False Cells(RowNum, 8).Value = Cells(RowNum, 11).Value & Cells(RowNum, 12).Value & Cells(RowNum, 13).Value RowNum = RowNum + 1 Loop End If Range("H4").Select Range(Selection, Selection.End(xlDown)).Select End Sub
IsEmpty
是指可能有或没有值(即空白或不空白)的单元格。 它不打算对整数做任何事情。
Sub GenerateStyleFabricColourV2() Dim srcData As Range Dim rowNum As Long, lastRow As Long With Worksheets("sheet2") lastRow = Application.Max(4, _ .Cells(.Rows.Count, "K").End(xlUp).Row, _ .Cells(.Rows.Count, "L").End(xlUp).Row, _ .Cells(.Rows.Count, "M").End(xlUp).Row) With .Cells(4, "H").Resize(lastRow - 4 + 1, 1) .FormulaR1C1 = "=rc[3]&rc[4]&rc[5]" .Value = .Value2 End With End With End Sub
Sub GenerateStyleFabricColourV2() Dim srcData As Range, rcell As Range Set srcData = ThisWorkbook.Sheets("Sheet1").Range("K4:K" & ThisWorkbook.Sheets("Sheet1").Cells(Sheet1.Rows.Count, "K").End(xlUp).Row) For Each rcell In srcData.Cells rcell.Offset(0, -3).Value = rcell.Value & rcell.Offset(0, 1).Value & rcell.Offset(0, 2).Value Next rcell End Sub
这非常简单。 我喜欢循环通过一列和使用偏移量。 我可能会过度简化它。
这个简单的代码非常简单有效,
对于= 1到拉斯特罗
如果单元格(a,1)=“”那么
goto lastline
在这里你可以把你的代码
lastLine所:
下一个