use*_*701 11 excel vba excel-vba
如果它们符合某个标准,我将如何遍历单元格B1到J1并将它们添加到范围中.例如.
Dim Range1 As Range
For i = 1 to 9
If Range("A1").Offset(1,i) meets a certain criteria Then
**Add that cell to Range1**
End If
Next i
Run Code Online (Sandbox Code Playgroud)
我不确定如何处理向Range1添加某些单元格的部分.
谢谢您的帮助!
bre*_*tdj 27
像这样的东西Union用来粘合你的范围
For each循环比For i = 1 to x方法更快您可以使用SpecialCells立即确定您的新范围(例如任何空白,任何错误,任何公式等)
Sub Test()
Dim rng1 As Range
Dim rng2 As Range
Dim c As Range
Set rng1 = Range("B1:J1")
For Each c In rng1
' Add cells to rng2 if they exceed 10
If c.Value > 10 Then
If Not rng2 Is Nothing Then
' Add the 2nd, 3rd, 4th etc cell to our new range, rng2
' this is the most common outcome so place it first in the IF test (faster coding)
Set rng2 = Union(rng2, c)
Else
' the first valid cell becomes rng2
Set rng2 = c
End If
End If
Next
End Sub
Run Code Online (Sandbox Code Playgroud)