tft每日頭條

 > 生活

 > 用excel1到33選6個不重複數字

用excel1到33選6個不重複數字

生活 更新时间:2024-08-22 16:45:02

有一個做财務工作的小夥伴問我,它收到10幾張發票,然後他希望其中幾張發票金額湊成一個數字,但他表示,湊了一上午的金額還沒有湊出來,有沒有什麼好的解決辦法,在Excel裡面這個問題輕而易舉的就可以完成。

我們使用模拟案例來進行求解,如下所示:A列中有25個數字,如何找出來,哪些數字相加等于66666呢?

用excel1到33選6個不重複數字(某些數字相加等于66666)1

第1種方法,使用VBA的方法:

首先,我們在E1單元格中輸入公式:

=SUMPRODUCT(A1:A25*B1:B25),表示A列和B列相乘相加

用excel1到33選6個不重複數字(某些數字相加等于66666)2

然後我們按ATL F11,調出開發編輯器,在裡面輸入代碼

Sub 計算() Do Until [e1] = 66666 a = a 1 For i = 1 To 25 Cells(i, 2) = Application.RandBetween(0, 1) Next i Loop End Sub

運行上述的代碼,Excel會自動計算,得到一個結果,這個算法是碰運氣,所以很有可能很久都得不到結果,這個時候我們可以按ESC鍵中止程序。

用excel1到33選6個不重複數字(某些數字相加等于66666)3

第2種方法,線性規劃求解

今天着重想介紹的是這種方法,首先我們需要在設置裡面将這個功能調出來,在Excel選項中,選擇加載項,點擊轉到

用excel1到33選6個不重複數字(某些數字相加等于66666)4

然後勾選規劃求解加載項,如下所示:

用excel1到33選6個不重複數字(某些數字相加等于66666)5

然後在數據選項卡的最右邊有一個規劃求解,我們點擊規劃求解,把相應的 條件輸入,然後Excel會進行一個數據運算,最終得到結果:

用excel1到33選6個不重複數字(某些數字相加等于66666)6

其中這是個數學問題,我們設置的公式是:

A1:A25是固定的數值 0<=B1:B25<=1 B1:B25=整數 使得:=SUMPRODUCT(A1:A25*B1:B25)的結果是6666

用excel1到33選6個不重複數字(某些數字相加等于66666)7

B1:B25單元格的值就是取0或1,如果取到的是1,就是希望對應A列中需要保留的值

用excel1到33選6個不重複數字(某些數字相加等于66666)8

對于這個技巧,你學會了麼?自己動手試試吧~

往期精彩:

2個Excel表格核對,條件格式快速找出相同和不同的部分!

Excel技巧:30秒将二維表格轉換成一維表!

Excel設置合同時間到期自動提醒,還可以用來生日提醒!

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved