Page 1 of 1

การหาผลรวมจากเงื่อนไขที่กำหนด

Posted: Wed Nov 02, 2016 6:39 pm
by visarut
เรียน ทุกท่านครับ
รบกวนขอคำแนะนำ 2 ข้อจากเอกสารที่แนบมาดังนี้ครับ

ที่ Sheet1 ต้องการให้เซลล์ D5 แสดงค่า ผลรวมของข้อมูลจาก sheet "sale data" ภายใต้เงื่อนไข จากเซลล์ C5 และช่วงเวลา จาก J2 ถึง L2


ที่ Sheet1 ต้องการให้เซลล์ D10 แสดงค่า ผลรวมของข้อมูลจาก sheet "sale data" ภายใต้เงื่อนไข จากเซลล์ B10 และ C10 และจากช่วงเวลา จาก J2 ถึง L2
Test.xlsx

ขอบคุณสำหรับคำแนะนำครับ

Re: การหาผลรวมจากเงื่อนไขที่กำหนด

Posted: Wed Nov 02, 2016 8:33 pm
by snasui
:D ตัวอย่างสูตรครับ
  1. เซลล์ D5 คีย์สูตร
    =SUM(INDEX('sale data'!$E$2:$R$70,MATCH($C5,INDEX(TEXT('sale data'!$B$2:$B$70,"@"),0),0),MATCH($J$2,'sale data'!$E$1:$R$1,0)):INDEX('sale data'!$E$2:$R$70,MATCH($C5,INDEX(TEXT('sale data'!$B$2:$B$70,"@"),0),0),MATCH($L$2,'sale data'!$E$1:$R$1,0)))
    Enter > Copy ลงด้านล่าง
  2. เซลล์ D10 คีย์สูตร
    =SUM(IF('sale data'!$C$2:$C$70=$B10,IF('sale data'!$D$2:$D$70=$C10,INDEX('sale data'!$E$2:$R$70,0,MATCH($J$2,'sale data'!$E$1:$R$1,0)):INDEX('sale data'!$E$2:$R$70,0,MATCH($L$2,'sale data'!$E$1:$R$1,0)))))
    Ctrl+Shift+Enter > Copy ลงด้านล่าง

Re: การหาผลรวมจากเงื่อนไขที่กำหนด

Posted: Thu Nov 03, 2016 6:01 pm
by visarut
snasui wrote::D ตัวอย่างสูตรครับ
  1. เซลล์ D5 คีย์สูตร
    =SUM(INDEX('sale data'!$E$2:$R$70,MATCH($C5,INDEX(TEXT('sale data'!$B$2:$B$70,"@"),0),0),MATCH($J$2,'sale data'!$E$1:$R$1,0)):INDEX('sale data'!$E$2:$R$70,MATCH($C5,INDEX(TEXT('sale data'!$B$2:$B$70,"@"),0),0),MATCH($L$2,'sale data'!$E$1:$R$1,0)))
    Enter > Copy ลงด้านล่าง
  2. เซลล์ D10 คีย์สูตร
    =SUM(IF('sale data'!$C$2:$C$70=$B10,IF('sale data'!$D$2:$D$70=$C10,INDEX('sale data'!$E$2:$R$70,0,MATCH($J$2,'sale data'!$E$1:$R$1,0)):INDEX('sale data'!$E$2:$R$70,0,MATCH($L$2,'sale data'!$E$1:$R$1,0)))))
    Ctrl+Shift+Enter > Copy ลงด้านล่าง
เรียน อาจารย์สันติพงศ์
ผมรบกวนขอคำชี้แจง จากสูตรที่เซล D5 เพิ่มเติมครับ ผมลองไล่แกะจากสูตรแล้วยังไม่สามารถนำมาประยุกต์ใช้ได้ ในการทำความเข้าใจสูตรที่เขียนมา ควรเริ่มจากพจน์ใดตามลำดับครับ


ขอบคุณครับอาจารย์

Re: การหาผลรวมจากเงื่อนไขที่กำหนด

Posted: Thu Nov 03, 2016 8:16 pm
by snasui
:D เซลล์ D5 เป็นสูตรรวมยอดจากช่วงเซลในบรรทัดที่พบค่า C5 ในช่วงข้อมูล B2:B70

ช่วงเซลล์ที่นำมารวมกันเริ่มจากคอลัมน์ที่พบค่าใน J2 และสิ้นสุดที่คอลัมน์ที่พบค่า L2 ในช่วง E1:R1

สูตรนี้จะไม่ยุ่งยากขนาดนี้หากว่ากำหนด B2:B70 ให้เป็น Text เสียก่อน

ฟังก์ชั่นสำคัญที่ต้องเข้าใจให้ได้คือ

=index(reference,row_num,column_num)

โดยที่
  • reference คือช่วงข้อมูลที่ต้องการนำมาแสดงผล
  • row_num บรรทัดที่ต้องการนำมาแสดงผล
  • column_num คอลัมน์ที่ต้องการนำมาแสดงผล
เมื่อนำ Index เชื่อมกัน Index เป็น Index:Index จะกลายเป็นช่วงข้อมูลใหม่ครับ