返回列表 上一主題 發帖

[發問] 請教:如何根據多項條件從資料庫搜尋

[發問] 請教:如何根據多項條件從資料庫搜尋

各位師兄/姐好,

問題:請問該如何根據多項條件從資料庫搜尋
在附件的"C2"的位置輸入"日期"後, (PS:這一欄是否可以做成下拉式選單)
則"B5"的欄位會根據"日期"和該行列的資訊,如"Call*未沖銷"及"9000"
到資料庫去搜尋到正確的數字。 Book1.rar (5.48 KB)

小弟曾嘗試用函數Dget,但是發生錯誤,又不知如何做,請大家不吝指教,謝謝。

回復 11# Hsieh

感謝Hsieh大大詳細的解釋和幫忙,非常謝謝您。

TOP

回復 10# JackieKM
資料的問題
首先會產生錯誤值是因為臺股期貨的F欄位含有-的非數值儲存格
將這些負號用取代功能取代成空格就不會產生錯誤值
但是因為八月期指的B7下拉選單中的項目並沒有空白鍵
而臺股期貨C3400的"臺股期貨(TX+MTX/4)"後面還有許多空白鍵
實際為"臺股期貨(TX+MTX/4)     "
造成比對不到資料而把7/17計算結果為0
還有一個問題是E欄的0,1是數值並非文字格式
所以D7公式應為=SUMPRODUCT((INDEX(a,,1)=$C7)*(INDEX(a,,3)=$B$7) *(INDEX(a,,4)=$D$3)*(INDEX(a,,5)=0)*INDEX(a,,6))
學海無涯_不恥下問

TOP

回復 7# Hsieh

Hsieh大大您好,不好意思,小弟又來麻煩您了,
根據大大上次的幫忙,我在另一個表格將所學的運用上去,有錯誤發生但我找不到問題點,想請你幫忙
以下是相關的函數及附件 Temp.rar (84.71 KB) ,

a
=OFFSET(臺股期貨!$A$2,,,COUNT(臺股期貨!$A:$A),10)         PS:問題點好像是在這

D7
=SUMPRODUCT((INDEX(a,,1)=$C7)*(INDEX(a,,3)=$B7) *(INDEX(a,,4)=$D3)*(INDEX(a,,5)=??)*INDEX(a,,6))
a1:日期     a3:商品名稱(契約名稱)    a4:到期月份(週別)      a5:交易人類別(代碼0)

如果有甚麼錯誤的地方還請指正,麻煩Hsieh大大了,謝謝。

TOP

回復 7# Hsieh

感謝Hsieh大大的幫忙,表格OK了,謝謝。

TOP

回復 6# ML089

感謝ML089大大的解說,我懂了,謝謝。

TOP

回復 5# JackieKM
C6=B6-SUMPRODUCT((INDEX(a,,4)=$D6)*(INDEX(a,,5)=B$4)*(INDEX(a,,1)=($C$3-1))*(INDEX(a,,3)=$B$3)*INDEX(a,,12))
F6=E6-SUMPRODUCT((INDEX(a,,4)=$D6)*(INDEX(a,,5)=E$4)*(INDEX(a,,1)=($C$3-1))*(INDEX(a,,3)=$B$3)*INDEX(a,,12))
學海無涯_不恥下問

TOP

回復 3# JackieKM

問題一:請問為什麼ROW(A1)需要-1,COLUMN(A1)需要-4?

B5 =OFFSET($C$27,ROW(A1)-1,MATCH($C$2,$24:$24,)+COLUMN(A1)-4)

OFFSET($C$27,y列,x欄),y列、x欄初始值為0,所以將變數值初始值校調為0

y列
        ROW(A1) =1
        ROW(A1) - 1 = 0

x欄
        MATCH($C$2,$24:$24,) 查詢 2014/7/11 為 3
        COLUMN(A1) = 1
        MATCH($C$2,$24:$24,) + COLUMN(A1) -4 = 0
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 4# Hsieh

感謝Hsieh大大的幫忙,函數沒有問題,更新資料庫也可以,真的是太感謝了。

還有個不請之請,就是"未沖銷契約量增減"這一欄是"當天的未沖銷契約量"減去"前一天的",請問該如何寫?謝謝。

TOP

回復 3# JackieKM
刪除原有的所有定義名稱,重新建立已下四個定義名稱
a
=OFFSET(七月資料總表!$A$2,,,COUNT(七月資料總表!$A:$A),16)
x
=COUNTA(OFFSET(七月日期總表!$A$2,,MATCH(資料查詢!$B$3&資料查詢!$C$2,七月日期總表!$1:$1,0)-1,50,))
交易日期
=OFFSET(七月日期總表!$A$2,,MATCH(資料查詢!$B$3&資料查詢!$C$2,七月日期總表!$1:$1,0)-1,x,)
交易期別
=OFFSET(七月日期總表!$B$1,1,,COUNTA(七月日期總表!$B:$B)-1,)

B3驗證清單來源
=交易期別
C3驗證清單來源
=交易日期
B6公式
=SUMPRODUCT((INDEX(a,,4)=$D6)*(INDEX(a,,5)=B$4)*(INDEX(a,,1)=$C$3)*(INDEX(a,,3)=$B$3)*INDEX(a,,12))
向下複製
E6公式
=SUMPRODUCT((INDEX(a,,4)=$D6)*(INDEX(a,,5)=E$4)*(INDEX(a,,1)=$C$3)*(INDEX(a,,3)=$B$3)*INDEX(a,,12))
向下複製
選擇權 - 七月.zip (209.39 KB)
學海無涯_不恥下問

TOP

        靜思自在 : 心中常存善解、包容、感思、知足、惜福。
返回列表 上一主題