Page 1 of 1

sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 3:29 pm
by sakonlaphat
SUM(SUMIF('01'!B24:B63,B24:B73,'01'!E24:E63))+SUM(SUMIF('02'!B24:B63,B24:B73,'02'!E24:E63))+SUM(SUMIF('03'!B24:B63,B24:B73,'03'!E24:E63)) ทุก sheet เหมือนกัน แต่คอลัม A ที่มีเหมือนและไม่เหมือน

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 3:33 pm
by snasui
:D ช่วยอธิบายว่าที่ชีท Sum ต้องการคำตอบในเซลล์ใด ด้วยเงื่อนไขใด ยกตัวอย่างคำตอบที่ถูกต้องมาด้วยจะได้เขียนสูตรเปรียบเทียบได้ครับ

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 3:48 pm
by sakonlaphat
ต้องการผลรวม ของsheet 01-05 ด้วย มาไว้ที่sheet sum ค่ะ
ด้วยเงือนไขว่า คอลัม A คือ ชื่อ Model ของสินค้าที่แต่ละวัน มีรายการไม่เหมือนกัน และมีบางรายการที่เหมือนกันบ้าง
อยากได้ผลรวมของแต่ละวัน(sheet 01-05) มารวมกันที่ sheet sum ด้วยการยึด ชื่อชื่อ Model ของสินค้าใน คอลัม A sheet sum เป็นหลักค่ะ เลยไม่รู้วา่ใช้ สูตร Sumif+Sumif+Sumif มันยาวไป
ไม่รู้ว่าว่ามีสูตรไหนใช้ได้อีก

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 4:08 pm
by sakonlaphat
ตัวอย่าง :roll:
sumif แล้วก้อ sum sheet

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 4:19 pm
by snasui
:D ชีท Sum เซลล์ C1 คีย์สูตรตามด้านล่างครับ

=SUM(SUMIF(INDIRECT("'"&{1,2,3,4,5}&"'!c3:c158"),$B4,OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1)))

Enter > Copy ไปด้านขวาและลงด้านล่าง

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 4:59 pm
by sakonlaphat
:?: :?: :?:
ตัวอย่างนี้จะทำยังงัยค่ะ

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 5:01 pm
by snasui
:D ได้ทดลองสูตรแล้วยังครับ หากลองแล้วได้ผลเป็นอย่างไรครับ :?:

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 5:06 pm
by sakonlaphat
ยังงงอยู่เลยค่ะ

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sat Jun 20, 2015 5:11 pm
by snasui
:shock: เรื่องงงเป็นเรื่องปกติ สูตรลักษณะนั้นไม่ใช่จะเข้าใจง่าย ๆ

เมื่อได้รับคำตอบให้ทดสอบและรายงานผลทุกครั้ง จะได้ทราบว่าสิ่งที่เป็นกังวลว่าคอลัมน์ B ไม่เหมือนกันนั้นสามารถหาคำตอบได้หรือไม่ครับ :mrgreen:

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Sun Jun 21, 2015 6:00 am
by snasui
sakonlaphat wrote:sumif แล้วก้อ sum sheet
snasui wrote:ตัวอย่างนี้จะทำยังงัยค่ะ
:D ที่ระบายสีไว้ด้านบนเป็นภาษาแชท ผิดกฎข้อ 1 ด้านบน :roll: ระมัดระวังด้วยครับ

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Mon Jun 22, 2015 11:53 am
by sakonlaphat
:thup: ขอบคุณค่ะสำหรับสูตร ลองประยุกต์ใช้แล้ว หาคำตอบได้ค่ะ :thup: :thup: :thup:
ขอโทษด้วยนะค่ะที่ใช้ภาษาไม่ถุกต้อง

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Thu Nov 28, 2019 12:11 pm
by janyad
=SUM(SUMIF(INDIRECT("'"&{1,2,3,4,5}&"'!c3:c158"),$B4,OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1)))
มีความหมายว่าอะไรบ้างค่ะ

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Thu Nov 28, 2019 2:36 pm
by logic
แปลแบบผมครับ 😁

รวมคอลัมน์ e ของชีต 1:5 เฉพาะรายการที่ c3:c158 เป็นค่าเดียวกับ b4

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Fri Nov 29, 2019 9:11 am
by janyad
ขอบคุณค่ะ แล้วจาก ,$B4,OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1)))
มีความหมายว่าอะไรบ้างค่ะ

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Fri Nov 29, 2019 9:44 am
by snasui
janyad wrote: Fri Nov 29, 2019 9:11 am ,$B4,OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1)))
:D ที่ตัดมาถามแปลไม่ได้เพราะไม่ครบองค์ประกอบของความเป็นสูตรครับ

จากสูตร =SUM(SUMIF(INDIRECT("'"&{1,2,3,4,5}&"'!c3:c158"),$B4,OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1)))

หมายถึงให้หายอดรวมของ SUMIF(INDIRECT("'"&{1,2,3,4,5}&"'!c3:c158"),$B4,OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1))

Sumif มีไวยากรณ์คือ
sumif(range,criteria,sum_range)

range คือช่วงข้อมูลที่เป็นชุดเงื่อนไข ในที่นี้คือ INDIRECT("'"&{1,2,3,4,5}&"'!c3:c158") หมายถึง C3:C158 ของชีต 1-5
criteria คือเงื่อนไขที่จะนำไปตรวจสอบกับ range ในที่นี้คือ $B4
sum_range คือช่วงข้อมูลที่ต้องนำมารวมเป็นผลลัพธ์เมื่อเข้าเงื่อนไข ในที่นี้คือ OFFSET(INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158"),0,COLUMNS($C4:C4)-1)

Offset มีไวยากรณ์คือ
offset(reference,rows,cols,height,width)

reference คือตำแหน่งเซลล์ที่เป็นจุดเริ่มต้น ในที่นี้คือ INDIRECT("'"&{1,2,3,4,5}&"'!e3:e158") ดูคำแปลของสูตรนี้ที่ด้านบนเพียงแต่เป็นคนละคอลัมน์ :roll:
rows คือจำนวนบรรทัดที่ห่างจากจุดเริ่มต้น ในที่นี้คือ 0
cols คือจำนวนคอลัมน์ที่ห่างจากจุดเริ่มต้น ในที่นี้คือ COLUMNS($C4:C4)-1 แปลว่าจำนวนบรรทัดในช่วง C4:C4 หักออกด้วย 1 จากสูตรนี้ผลลัพธ์จะได้ 0 เพราะ COLUMNS($C4:C4) มีค่าเป็น 1 เมื่อหักออกด้วย 1 จึงเป็น 0
height คือความสูงของข้อมูล สูตรนี้มีการละไว้
width คือความกว้างของข้อมูล สูตรนี้มีการละไว้

จากสูตรนี้แปลโดยรวมของ Offset ได้ว่าจากจุดเริ่มต้นขยับไปทางบรรทัด 0 บรรทัด ขยับไปทางคอลัมน์ 0 คอลัมน์ แสดงว่าอยู่ในตำแหน่งเดิม

แต่เมื่อคัดลอกไปทางขวาจำนวนคอลัมน์จะเพิ่มมากขึ้นจากสูตร COLUMNS($C4:C4)-1 หากคัดลอกไปทางขวา 1 คอลัมน์สูตรจะกลายเป็น COLUMNS($C4:D4)-1 ผลลัพธ์เป็น 1 แปลว่าขยับไปทางขวา 1 คอลัมน์ เช่น จากเดิม C3:C158 ก็จะกลายเป็น D3:D158 เป็นต้น

Re: sumif หลายsheet แล้วรวมไว้ที่sheetสรุป

Posted: Fri Nov 29, 2019 11:49 am
by janyad
ขอบคุณค่ะอาจารย์ จะเอาไปทดลองใช้ค่ะ เพราะเริ่มหัดใช้ EXCEL แบบไม่มีพื้นฐานเลยจะเข้าใจยากหน่อยค่ะ