![Excel:如何從範圍清單中找出某個值所在的範圍?](https://rvso.com/image/1414705/Excel%EF%BC%9A%E5%A6%82%E4%BD%95%E5%BE%9E%E7%AF%84%E5%9C%8D%E6%B8%85%E5%96%AE%E4%B8%AD%E6%89%BE%E5%87%BA%E6%9F%90%E5%80%8B%E5%80%BC%E6%89%80%E5%9C%A8%E7%9A%84%E7%AF%84%E5%9C%8D%EF%BC%9F.png)
我希望有人能回答我的問題!
我有很多值,需要知道哪些值位於範圍列表中,如果是,它們位於哪個範圍內。
例如,工作表 1 包含我在 A 列中感興趣的值,而工作表 2 包含 B 列中範圍的起始值和 C 列中範圍的結束值以及 D 列中每個範圍的名稱。輸出如果工作表1 列A 中給出的值介於工作表2 列B 到列C 中描述的任何範圍之間,並返回列D 中的相應資訊。範圍。
ps 如果有人知道如何做到這一點,那麼在一個範圍內找到一個範圍會更好,但我不久前就放棄了!
答案1
有許多網站更詳細地討論雙重匹配和類似的公式,並提供更有效的方法來實現這一點,但這裡有一個例子。
假設:2 張
- 表 1 = 數據
- A 列 = 鑽孔
- B 列 = 深度
- C 列 = 根據表 2 計算得出的值
- 表 2 = 範圍
- 鑽孔
- 深度自
- 深度至
- 值(用於填寫工作表 1 的 C 欄)
該公式是一個陣列公式,這意味著它需要使用ctrl+ shift+輸入enter
=INDEX(ranges!$D$2:$D$5,MATCH(data!A2,IF(data!B2>ranges!$B$2:$B$5,IF(data!B2<ranges!$C$2:$C$5,ranges!$A$2:$A$5,""),""),0))
我不會討論索引和匹配是如何工作的,因為這在網路上隨處可見,但對於匹配公式的內部來說,這就是正在發生的事情。
他們兩個如果函數檢查給定的深度是否在每個深度 from 和深度 to value 之間。如果與這兩個條件都不匹配,則傳回空白;如果與這兩個條件均匹配,則傳回 A 列中的鑽孔 ID。
然後,匹配函數嘗試將您想要的井 ID 與包含一些好的 ID 和一堆空白的陣列進行匹配。如果它與井 ID 匹配,則這就是您所在的行,並將該值返回到選擇相應值單元格的索引。
對於匹配範圍,這取決於範圍是否對齊或哪些範圍更長,因為您可能嘗試將值填入跨越多個容器的範圍。