日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

在這篇文章中,探討一種計算在至少一列中滿足規定條件的行數的解決方案,示例工作表如下圖1所示,其中詳細列出了各個國家在不同年份廢鎳的出口水平。

圖3

此時,我們根本無法按照上述方法構造與SUMPRODUCT函數解決方案等效的COUNTIFS構造。使用SUMPRODUCT函數的公式:

=SUMPRODUCT(N((B2:B14>=1000)+(C2:C14>=1000)+(D2:D14>=1000)+(E2:E14>=1000)+(F2:F14>=1000)+(G2:G14>=1000)+(H2:H14>=1000)+(I2:I14>=1000)+(J2:J14>=1000)>0))

可得出正確的結果11。然而,公式顯得太笨拙了,如果考慮的列數不是9而是30,那會怎樣!

幸運的是,由于示例中列區域是連續的,因此可以在單個表達式中查詢整個區域(B2:J14),隨后適當地操縱這個結果數組。

這個解決方案的數組公式如下:

=SUM(N(MMULT(N(B2:J14>1000),TRANSPOSE(COLUMN(B2:J14)^0))>0))

公式中,比較區域中的每個元素是否大于或等于1000:

B2:J14>1000

結果是包含以下布爾值的數組:

{TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE;FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE;FALSE,FALSE,TRUE,TRUE,FALSE,TRUE,TRUE,TRUE,TRUE;FALSE,FALSE,FALSE,FALSE,FALSE,TRUE,TRUE,TRUE,FALSE;TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE;TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE;FALSE,TRUE,FALSE,FALSE,FALSE,FALSE,TRUE,FALSE,TRUE;TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE;FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE;TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE;TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,FALSE,TRUE;FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE;TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE}

使用N函數強制轉換成數字:

N(B2:J14>1000)

得到:

{1,1,1,1,1,1,1,1,1;0,0,1,1,1,1,1,1,1;0,0,1,1,0,1,1,1,1;0,0,0,0,0,1,1,1,0;1,1,1,1,1,1,1,1,1;1,1,1,1,1,1,1,1,1;0,1,0,0,0,0,1,0,1;1,1,1,1,1,1,1,1,1;0,0,0,0,0,0,0,0,0;1,1,1,1,1,1,1,1,1;1,1,1,1,1,1,1,0,1;0,0,0,0,0,0,0,0,0;1,1,1,1,1,1,1,1,1}

現在,為了計算每一行中1的數量,我們使用MMULT。并且,由于上述數組(一個13行乘9列的數組)包含9列,因此我們用來形成乘積的矩陣的行數必須等于該數組的列數。這樣,形成第二個矩陣的公式構造為:

TRANSPOSE(COLUMN(B2:J14)^0)

轉換為:

TRANSPOSE({2,3,4,5,6,7,8,9,10}^0)

轉換為:

TRANSPOSE({1,1,1,1,1,1,1,1,1})

由于必須確保由9個1組成的數組由9行組成,因此使用TRANSPOSE函數來轉換:

{1;1;1;1;1;1;1;1;1}

這樣,就可以將上述兩個數組傳遞給MMULT函數,因此:

MMULT(N(B2:J14>1000),TRANSPOSE(COLUMN(B2:J14)^0))

轉換為:

MMULT({1,1,1,1,1,1,1,1,1;0,0,1,1,1,1,1,1,1;0,0,1,1,0,1,1,1,1;0,0,0,0,0,1,1,1,0;1,1,1,1,1,1,1,1,1;1,1,1,1,1,1,1,1,1;0,1,0,0,0,0,1,0,1;1,1,1,1,1,1,1,1,1;0,0,0,0,0,0,0,0,0;1,1,1,1,1,1,1,1,1;1,1,1,1,1,1,1,0,1;0,0,0,0,0,0,0,0,0;1,1,1,1,1,1,1,1,1},{1;1;1;1;1;1;1;1;1})

得到:

{9;7;6;3;9;9;3;9;0;9;8;0;9}

然后,確定該數組中哪些元素大于0,然后將結果求和。因此,公式:

=SUM(N(MMULT(N(B2:J14>1000),TRANSPOSE(COLUMN(B2:J14)^0))>0))

轉換為:

=SUM(N({9;7;6;3;9;9;3;9;0;9;8;0;9}>0))

轉換為:

=SUM(N({TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;FALSE;TRUE}))

轉換為:

=SUM({1;1;1;1;1;1;1;1;0;1;1;0;1})

結果為:

11

如果不想使用數組公式,可以使用下面的公式替換:

=SUM(N(MMULT(N(B2:J14>1000),ROW(INDEX(A:A,1):INDEX(A:A,COLUMNS(B2:J14)))^0)>0))

分享到:
標簽:excel函數應用 excel數據透視表 excel表格制作 Excel教程
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定