我有一个包含26000个条目的摘要工作表(sh)。我有一个用户窗体,带有一个组合框,允许用户搜索数据库,并且只要组合框中的值与第6列中的值匹配;将整个行复制到新的工作表(shR)。第6列中的条目/值的范围在0.007到1之间。我想设计代码,使组合框将这些值显示为范围,然后代码可以在第6列中搜索该范围内的所有此类条目。范围;
这是我当前的代码:
For i=5 to totRows
if (Trim(sh.Cells(i, 6)) <= Trim(cbDn.Value) Or cbDn.Value = "") then
totR = shR.Cells(Rows.count, 1).End(xlUp).Row
sh.Rows(i).EntireRow.Copy Destination:=shR.Cells(totR + 1, 1)
End If
Next i
答案 0 :(得分:0)
这样的事情应该可以的:
Dim arr, mn, max, v, c
If Len(cbDn.Value) > 0 Then '<<< check user made a selection
arr = split(cbDn.Value, "-")
mn = CDbl(Trim(arr(0))
mx = CDbl(Trim(arr(1))
For i=5 to totRows
v = sh.Cells(i, 6).Value
if v > mn And v <= mx then
Set c = shR.Cells(Rows.count, 1).End(xlUp).Offset(1, 0)
sh.Rows(i).EntireRow.Copy Destination:=c
End If