全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 Excel
2047 1
2007-08-18

求助EXCEl问题

在一个数列中有正有负
要求找出能够相加等于0的组合
有没有办法可以编函数做到这个事情

另外:有木有人做过account recon这个东东啊~

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-5-27 16:43:45
任意两两三三四四相加等于指定数的组合选择宏代码
Option Explicit
Dim arr1 As Variant, j%, z%
Dim dic As New Dictionary
Sub xxxx()
    j = Range("a65536").End(xlUp).Row
    arr1 = Range("a1:a" & j)
    z = InputBox("请输入要得到的结果值:", "hello!!", "75")
    zh 1, 0, ""
    If dic.Count = 0 Then
        MsgBox "无解!!!"
        GoTo aa:
    End If
    Range("b1").EntireColumn.Clear
    Range("b1:b" & dic.Count) = WorksheetFunction.Transpose(dic.Keys)
    Range("b1").EntireColumn.AutoFit
    MsgBox "共" & dic.Count & "种结果"
aa:    Set dic = Nothing
End Sub
Sub zh(i%, x%, y$)
    If x + arr1(i, 1) = z Then
        If Not dic.Exists(y & arr1(i, 1) & "=" & z) Then
            dic.Add y & arr1(i, 1) & "=" & z, ""
        End If
    End If
    If i < j And x < z Then
        If x + arr1(i, 1) < z Then zh i + 1, x + arr1(i, 1), y & arr1(i, 1) & "+"
        zh i + 1, x, y
    End If
   
        
End Sub
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群