如果结果的总和等于总值,我想让一个应用程序搜索一些值。
只有在搜索2和3值时,应用程序才能正常运行。
超过3个Excel不会响应。
Private Sub cmdSearch_Click()
Dim a, b, c, d As Integer
Dim rng As Range
Set rng = Range("A1").CurrentRegion
Range("G2:G31").Value = ""
'searching 2
If Range("G2").Value = "" Then
For a = 2 To rng.Count
For b = a + 1 To rng.Count
If rng.Cells(b) + rng.Cells(a) = Range("D2") Then
Range("G2").Value = rng.Cells(a)
Range("G3").Value = rng.Cells(b)
End If
Next b
Next a
End If
'seraching 3
If Range("G2").Value = "" Then
For a = 2 To rng.Count
For b = a + 1 To rng.Count
For c = b + 1 To rng.Count
If rng.Cells(c) + rng.Cells(b) + rng.Cells(a) = Range("D2") Then
Range("G2").Value = rng.Cells(a)
Range("G3").Value = rng.Cells(b)
Range("G4").Value = rng.Cells(c)
End If
Next c
Next b
Next a
End If
'searching 4
If Range("G2").Value = "" Then
For a = 2 To rng.Count
For b = a + 1 To rng.Count
For c = b + 1 To rng.Count
For d = c + 1 To rng.Count
If rng.Cells(d) + rng.Cells(c) + rng.Cells(b) + rng.Cells(a) = Range("D2") Then
Range("G2").Value = rng.Cells(a)
Range("G3").Value = rng.Cells(b)
Range("G4").Value = rng.Cells(c)
Range("G5").Value = rng.Cells(d)
End If
Next d
Next c
Next b
Next a
End If
End Sub
有人可以帮我做同样的事情,但是更简单吗?
非常感谢