[英]Assign an incoherent range to a variable
我试图将一个不连贯的范围分配给一个变量,但我似乎无法做到正确。 谁能帮帮我吗?
提前致谢!
我的代码如下所示:
Dim tstRange As Range
Dim strRange As String
Select Case strSite
Case "Lerum/Aspedalen"
strRange = "B" & iLastRow & ", H" & iLastRow & ":L" & iLastRow
With Kurtans_favorit
Set tstRange = .Range(strRange)
Set tstRange = .Range("B" & iLastRow, "H" & iLastRow & ":L" & iLastRow)
End With
将范围分配给“tstRange”的第一种和第二种方法都不起作用。 好吧,实际上第一个确实如此,但它只是给了我范围内第一个单元格的内容,这不是我的意图。
我打算使用这个范围来检查它们是否包含任何值。 如果他们这样做,用户将收到一个问题,是否覆盖或取消他/她正在执行的操作。
看看这个例子:
Option Explicit
Private Sub OlaJohnson()
PrintAllRangeMembers RangeString:="A1,C1:E1"
End Sub
Private Sub PrintAllRangeMembers(RangeString As String)
' Purpose:
' Iterate through all members of a range and print them to the Immediate window
Dim IncoRange As Range
Set IncoRange = ThisWorkbook.Sheets("Sheet1").Range(RangeString)
Dim Cell As Variant
For Each Cell In IncoRange
Debug.Print Cell
Next Cell
End Sub
Sub PrintAllRangeMembers
将Range
(是否一致)作为参数,通过For Each
循环遍历所有成员,并将值打印到即时 window。
您可以在For Each
循环中执行您需要进行的任何检查。 打印单元格的值只是为了证明预期的行为结果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.