• 3

EXCEL函數問題,求解

EXCEL函數問題,求解

"貨物明細表"中有"最後進貨日期"及"最後進貨數量",兩個空格

EXCEL函數問題,求解

"進出貨明細表"有商品的"到貨日期"及其進貨數量



要如何使用"貨物明細表"中的"商品名稱",

去搜尋"進出貨明細表"的最後"到貨日期"及其"數量",

然後回傳到"貨物明細表"中的"最後進貨日期"及"最後進貨數量"?
2016-10-10 4:27 發佈
文章關鍵字 excel 函數問題

(我打錯字,訂正一下,1,1 要改成 1,0)
sheet2 b2
=LOOKUP(1,0/(Sheet1!$B$2:$B$14=$A2),Sheet1!$A$2:$A$14)

sheet2 c2
=LOOKUP(1,0/(Sheet1!$B$2:$B$14=$A2),Sheet1!$C$2:$C$14)

其它往下拉,範圍請自行修改
gan978a wrote:
"貨物明細表"中有"...(恕刪)



去研究一下vlookup這個函數,就知道怎麼用了。

=VLOOKUP(C3,$F$3:$G$10,2,FALSE)
其中:
C3是你進貨明細中的品項
$F$3:$G$10是你銷售資料的範圍
2是指範圍資料內要取出的欄位第幾欄。
FALSE是指要做精確比對,若填TRUE則做相似比對。
snare wrote:

sheet2 b2
=LOOKUP(1,1/(Sheet1!$B$2:$B$14=$A2),Sheet1!$A$2:$A$14)

sheet2 c2
=LOOKUP(1,1/(Sheet1!$B$2:$B$14=$A2),Sheet1!$C$2:$C$14)

其它往下拉,範圍請自行修改


你好,起初可以使用,但發現一些問題
如果我在進出貨明細也就是Sheet1新增資料,函數沒有重新運算耶

請問搜尋範圍如果要搜尋Sheet1 B欄全部,而不是B2到B14,那要怎麼改?
可不可以大約解釋一下函數用法。
要找"日期最近的數據",這個最近的日期要怎麼用函數定義
因為從沒學過,對我有點吃力。
kernlliang wrote:
去研究一下vlookup這個函數,就知道怎麼用了。

=VLOOKUP(C3,$F$3:$G$10,2,FALSE)
其中:
C3是你進貨明細中的品項
$F$3:$G$10是你銷售資料的範圍
2是指範圍資料內要取出的欄位第幾欄。
FALSE是指要做精確比對,若填TRUE則做相似比對。


大約了解了VLOOKUP的用法,
但是上面的函數沒辦法適用我要的數值,
因為我要用工作表2的資料去尋找工作表1的範圍,
並且要找出最近的日期。

關於要找出"最近的日期"要怎麼使用函數呢?
請參考!

B2 欄位公式輸入完成後,
需以 Ctrl + Shift + Enter 結束,
此時公式最外層會自動加上大括號,代表是陣列公式,
其餘欄位則依一般複製欄位方式向右/向下複製!







=IFERROR(OFFSET('進出貨明細'!$B$1, LARGE(IF(INDIRECT("進出貨明細!$B$2:$B$"&COUNTA('進出貨明細'!$B:$B))=$A2, ROW($B:$B), FALSE), 1), IF(COLUMN(A1)=1, -1, 1)), "")
My Interior Knowledge is Extraordinaire

gan978a wrote:
你好,起初可以使用,...(恕刪)





在貨物明細表
先選取B2格後,再新增定義名稱
到貨日期=OFFSET(進出貨明細表!$A$1,1,0,COUNTA(進出貨明細表!$A:$A)-1)
商品名稱=OFFSET(進出貨明細表!$B$1,1,0,COUNTA(進出貨明細表!$A:$A)-1)
數量=OFFSET(進出貨明細表!$C$1,1,0,COUNTA(進出貨明細表!$A:$A)-1)
上面動態定義資料範圍(統一以日期資料數量來定範圍)

最後進貨日=MAX(IF(商品名稱=貨物明細表!$A2,到貨日期))
計算符合商品名稱中最大日期(最後日期)

然後在
B2格輸入 =IF(最後進貨日>0,最後進貨日,"")
C2格輸入 =SUMIFS(數量,商品名稱,A2,到貨日期,B2)

參考看看
gan978a wrote:
你好,起初可以使用,但發現一些問題
如果我在進出貨明細也就是Sheet1新增資料,函數沒有重新運算耶
...(恕刪)


因為您沒有改範圍

gan978a wrote:
請問搜尋範圍如果要搜尋Sheet1 B欄全部,而不是B2到B14,那要怎麼改?
...(恕刪)


順便訂正一下,我打錯一個字
sheet2 b2
=LOOKUP(1,0/(Sheet1!$B:$B=$A2),Sheet1!$A:$A)
sheet2 c2
=LOOKUP(1,0/(Sheet1!$B:$B=$A2),Sheet1!$C:$C)

P.S 當資料量超多,數千筆時,請參考7樓高手
把Sheet1!$B:$B、Sheet1!$A:$A、Sheet1!$C:$C,定義成“動態範圍”
就像這樣=LOOKUP(1,0/(名稱=$A2),日期),執行效率會比較好
或使用6樓高手的陣列公式

gan978a wrote:
要找"日期最近的數據",這個最近的日期要怎麼用函數定義
...(恕刪)

sheet c2 就是公式

YS2000 wrote:
在貨物明細表
先選取B2格後,再新增定義名稱
到貨日期=OFFSET(進出貨明細表!$A$1,1,0,COUNTA(進出貨明細表!$A:$A)-1)
商品名稱=OFFSET(進出貨明細表!$B$1,1,0,COUNTA(進出貨明細表!$A:$A)-1)
數量=OFFSET(進出貨明細表!$C$1,1,0,COUNTA(進出貨明細表!$A:$A)-1)
上面動態定義資料範圍(統一以日期資料數量來定範圍)

最後進貨日=MAX(IF(商品名稱=貨物明細表!$A2,到貨日期))
計算符合商品名稱中最大日期(最後日期)

然後在
B2格輸入 =IF(最後進貨日>0,最後進貨日,"")
C2格輸入 =SUMIFS(數量,商品名稱,A2,到貨日期,B2)

參考看看


請問
先選取B2格後,再新增定義名稱
B2是"貨物明細表的B2"還是進出貨明細的B2

而新增定義名稱時,範圍要選擇哪一個?
活頁簿,貨物明細表,還是進出貨明細?

選取B2的用意是?

Mystique Hsiao wrote:
請參考!

B2 欄位公式輸入完成後,
需以 Ctrl + Shift + Enter 結束,
此時公式最外層會自動加上大括號,代表是陣列公式,
其餘欄位則依一般複製欄位方式向右/向下複製!



多謝,難怪我新增資料時不會自動更新
原來是欄位公式輸入完成後,需以 Ctrl + Shift + Enter 結束

THX
  • 3
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?