กรองแถวจากอาร์เรย์หากค่าอยู่ระหว่างสองเซลล์

ฉันมีตารางราคาตามตัวอย่างด้านล่าง:

ตารางราคา

ฉันต้องกรองตาราง ดังนั้นขึ้นอยู่กับสิ่งที่ฉันมีใน "ผลรวม m2" และ "วัสดุ" ก็จะส่งกลับราคาที่ถูกต้อง "ผลรวม m2" มักจะเป็นค่าระหว่างสองค่าในคอลัมน์ A แต่บางครั้งอาจเป็นตัวเลขที่ต่ำกว่า 250 หรือสูงกว่า 2500

ในกรณีที่ G1 เท่ากับค่าใดๆ ในคอลัมน์ A ฉันต้องการให้กรองแถวด้วยค่านั้นและคอลัมน์ด้วยวัสดุที่ถูกต้อง

ขอบคุณล่วงหน้า.


person Kiame    schedule 25.07.2017    source แหล่งที่มา
comment
คุณต้องการจัดการค่าที่สูงกว่า 2500 และต่ำกว่า 250 อย่างไร   -  person Robin Gertenbach    schedule 25.07.2017
comment
ขออภัย ลืมบอกไปว่า หากต่ำกว่า 250 จะส่งกลับราคาที่ถูกต้องในแถวแรกสำหรับวัสดุที่กำหนด และหากสูงกว่า 2,500 จะส่งกลับราคาที่ถูกต้องในแถวสุดท้าย   -  person Kiame    schedule 25.07.2017
comment
และถ้ามันอยู่ระหว่างสองปริมาณในคอลัมน์ A คุณใช้ราคาที่สูงกว่า แล้วในตัวอย่างของคุณที่ 750 จะเป็น 3.54 ยูโรหรือไม่   -  person Tom Sharpe    schedule 25.07.2017
comment
เท่านั้นเอง ต้องใช้ราคาที่สูงกว่าถ้าปริมาณ m2 ไม่ถึงค่าถัดไปในคอลัมน์ A ขอบคุณครับ   -  person Kiame    schedule 25.07.2017


คำตอบ (1)


=INDEX(
  B2:D6, 
  IFERROR(MATCH(G1, A2:A6, 1), 1), 
  MATCH(G2, B1:D1, 0))

IFERROR(MATCH(G1, A2:A6, 1), 1) มองผ่านราคาจากน้อยไปมาก (ใช้จำนวนหน่วยที่ตรงกันหรืออันที่เล็กกว่าถัดไป) หากต่ำกว่า 250 ก็จะถอยกลับไปที่แถวแรก

person Robin Gertenbach    schedule 25.07.2017