求助,excel中,在一组数字当中挑选出指定个数的数字,让他们之和等于指定的数.
求助,在一组数字当中挑选出指定个数的数字,让他们之和等于指定的数.
例如:给出一组数,个数不定.给出另一个常数A,其值等于前一组数里指定个数之和.要求在数组里挑出其和等于A的那几个数.
例如:
数组:1,2,5,6 常数A为9,要求选3个数,使其和等于9
结果为1,2,6
注意:数组中数的个数不定,但是知道有几个数相加等于A.
希望哪位高人能给出VBA的程序,万分感谢.
求助,excel中,在一组数字当中挑选出指定个数的数字,让他们之和等于指定的数.
答案:1 悬赏:0 手机版
解决时间 2021-06-02 07:18
- 提问者网友:感性作祟
- 2021-06-01 07:01
最佳答案
- 五星知识达人网友:封刀令
- 2021-06-01 08:38
Sub chiefzjh()
On Error Resume Next
Dim mSour As Range '数据区域
Dim Tar%,n '目标值 / 分解个数
Dim C1%,C2%,C3%,Rslt,t%
Tar = 15:n = 3 'xxxxxx 目标值、分解个数设定
Set mSour = Range(a1:d10) 'xxxxxx 数据源设定
Set Rslt = CreateObject(scripting.dictionary)
t = mSour.Cells.Count
If t < n Then Exit Sub:MsgBox Wrong!
For C1 = 1 To t - 2
For C2 = C1 + 1 To t - 1
For C3 = C2 + 1 To t
If mSour(C1) + mSour(C2) + mSour(C3) = Tar Then
Rslt.Add mSour(C1) & , & mSour(C2) & , & mSour(C3),
End If
Next C3
Next C2
Next C1
MsgBox Join(Rslt.keys,vbCrLf),,Tar & = sum of:
End Sub
再问: 请问如何将运算结果输出?我数据比较多,可能有几千个
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯