【发布时间】:2015-05-11 02:07:30
【问题描述】:
我打算让我的代码在一个填充了数据的 Excel 电子表格中进行搜索,并返回 p 值低于 0.05 的整行。但是,我没有收到任何语法错误,并且代码看起来很正确。我正在处理一个大型数据集,大约 780000 个行条目,所以我不知道这是否是导致错误的原因。代码应该通读,如果满足上述条件,则返回整行,否则应该忽略该行。在这里,代码没有返回任何内容,也没有提供错误。
Sub GrabRelaventData()
Dim i As Long, j As Long
Dim s1 As Worksheet, s2 As Worksheet
Set s1 = Sheets("RNASeq EH developmental 10 hits")
Set s2 = Sheets("pVal checks")
For i = 1 To 787731
If s1.Cells(i, 10) > 0.05 And s1.Cells(i, 16) > 0.05 And s1.Cells(i, 22) > 0.05 And s1.Cells(i, 26) > 0.05 Then
Exit For
Else
For j = 1 To 39
s2.Cells(i, j).Value = s1.Cells(i, j).Value
Next j
End If
Next i
End Sub
【问题讨论】:
-
您在这里缺少信息:它做什么,与它应该做什么?
-
由于您的 IF 语句导致 EXIT FOR,如果第一行的 p 值大于 0.05,您的代码将终止。您的代码可能会按照编写的方式完美运行。
标签: vba excel large-data