4

範囲に最後の列を使用しようとしています:WS.range("F2:LastCol" & LastRow).Cells私のサブは

WS.range("F2:K" & LastRow).Cellsしかし、これLast Columnは動的であり、変化し続けます

ありがとう

Sub QQ()

Dim LastRow As Long
Dim LastCol As Long
Dim WS As Worksheet
Dim rCell As range

Set WS = Sheets("sheet1")

LastRow = WS.range("F" & WS.Rows.Count).End(xlUp).Row

LastCol = Cells(2, .Columns.Count).End(xlToLeft).Column
'Also tried: LastCol=rgRange.Cells(rgRange.Count).Column 

For Each rCell In WS.range("F2:LastCol" & LastRow).Cells

STUFF 'The stuff works for WS.range("F2:K" & LastRow).Cells

End Sub
4

3 に答える 3

1

この方法でループを定義してみてください:

For Each rCell In WS.range(ws.Range("F2"), Ws.Cells(LastRow, LastCol)).Cells

WSまたは、このソリューションを使用すると、より短い方法で実行できます(の場合Activesheet):

For Each rCell In WS.range("F2", Cells(LastRow, LastCol)).Cells
于 2013-06-05T13:30:21.050 に答える