返回列表 上一主題 發帖

[發問] 修正公式,以利適用變動的內容。

選擇 AZ7:AZ9 三格
編輯欄貼上公式
=IFERROR(SMALL(IF(MAX(IF(COUNTIF($BC9:BC11,$B$1:$AX$1)=0,$B7:$AX7))=$B7:$AX7,$B$1:$AX$1),{1;2;3}),"")
陣列公式,三鍵輸入

選擇 AZ7:AZ9 三格,右拉複製公式
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

上公式僅在 Sheet2 測試

先上班去了,等中午我再看看
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

1樓公式補充說明,{1;2;3} 是概估同數最多3個,依目前表格可擴充至 1~7
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

再補充
往下的複製要選擇 AZ7:BB9,一次一個區域複製
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

剛剛檢查前面公式有錯誤

選擇 AZ7:AZ12 六格儲存格 ,貼上下列公式,以三鍵輸入公式                       
=IFERROR(SMALL(IF(MAX(IF(COUNTIF($AY7:AY12,$B$1:$AX$1)=0,$B7:$AX7))=$B7:$AX7,$B$1:$AX$1),{1;2;3;4;5;6}),"")                       
                       
選擇 AZ7:BB13 七格儲存格 ,下拉至底複製公式                       
                       
最後一組有異,是小計位置應該在70列位置,自行調整資料位置即可
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 8# Airman

我是看你的的答案做的,不是大部分相同嗎?

我有點閱讀障礙,文字敘述不是看得很懂。

你的是2003版EXCEL,沒有IFERROR函數,若可以接受數字文字型態時,公式可以改為
AZ7:AZ12 =TEXT(SMALL(IF(MAX(IF(COUNTIF($AY7:AY12,$B$1:$AX$1)=0,$B7:$AX7))=$B7:$AX7,$B$1:$AX$1,99),{1;2;3;4;5;6}),"[<>99];;")
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

AZ7:AZ12
=TEXT(SMALL(IF(LARGE($B7:$AX7+$B$71:$AX$71%%,1+COUNTIF($B7:$AX7,">="&INDEX(7:7,MATCH(--AY7,$1:$1,))))=$B7:$AX7+$B$71:$AX$71%%,$B$1:$AX$1,99),{1;2;3;4;5;6}),"[<>99];;")
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

第一列的對應數_Bx.rar (41.01 KB)
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

本帖最後由 ML089 於 2019-4-18 09:45 編輯

回復 23# Airman

選 BH7:BH12,貼上公式,陣列輸入(三鍵輸入)
=TEXT(SMALL(IF(SMALL($B7:$AX7+1/$B$71:$AX$71,1+COUNTIF($B7:$AX7,"<="&INDEX(7:7,MATCH(--BG7,$1:$1,))) )=$B7:$AX7+1/$B$71:$AX$71,$B$1:$AX$1,99),{1;2;3;4;5;6}),"[<>99];;")
選 BH7:BH12 右拉
選 BH7:BJ13 下拉

僅測試一組,其他你對一對吧!
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 23# Airman

區域陣列要改為數值型,我還沒有新想法,可以用你上次的方法

把主要的公式 SMALL(.....) 定義程名稱,比較好維護公式。
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

        靜思自在 : 每天無所事事,是人生的消費者,積極、有用才是人生的創造者。
返回列表 上一主題