:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

sum ข้อมูลแบบมีเื่อนไข

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

sum ข้อมูลแบบมีเื่อนไข

#1

Post by March201711 »

อยาก sum data เฉพทะเดือนที่เลือกที่ cell e2 โดยดึงข้อมูลจากsheet data ที่column e โดยดึเป็นยอดรวมของ MO เฉะลพาะเดือนที่ธันวาคมค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
puriwutpokin
Guru
Guru
Posts: 3801
Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365

Re: sum ข้อมูลแบบมีเื่อนไข

#2

Post by puriwutpokin »

ที่ E6=SUMPRODUCT(ISNUMBER(SEARCH(LOOKUP(CHAR(255),$B$6:$B6),data!$D$3:$D$35))*(MONTH(data!$E$3:$E$35)=MONTH($E$2)),data!F$3:F$35) คัดลอกไปทางขวาและลงล่างครับ
:shock: :roll: :D
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: sum ข้อมูลแบบมีเื่อนไข

#3

Post by March201711 »

ค่ะ แล้ว Column B C , M/O และ M/O Name ใช้สูตรแยก text อย่างไรค่ะ ให้ดึงมาแค่ที่ไม่ซ้ำกันค่ะ
User avatar
puriwutpokin
Guru
Guru
Posts: 3801
Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365

Re: sum ข้อมูลแบบมีเื่อนไข

#4

Post by puriwutpokin »

ปรับเป็นที่ B6=IFERROR(IF(MOD(ROW(B6),2),"",INDEX(LEFT(data!$D$3:$D$35,4),MATCH(0,COUNTIF(B$5:B5,LEFT(data!$D$3:$D$35,4)),0))),"") กด Ctrl+Shift+Enter คัดลอกลง
ปรับเป็นที่ C6=IFERROR(IF(MOD(ROW(C6),2),"",INDEX(MID(data!$D$3:$D$35,6,14),MATCH(0,COUNTIF(C$5:C5,MID(data!$D$3:$D$35,6,14)),0))),"") กด Ctrl+Shift+Enter คัดลอกลง
ปรับเป็นที่
D6=IFERROR(INDEX(data!C$3:C$35,MATCH(1,INDEX((LEFT(data!D$3:D$35,4)=B6)*(MONTH(data!E$3:E$35)=MONTH(E$2)),),)),"") คัดลอกลง
ปรับเป็นที่ E6=IF(ROWS($B$6:$B6)>COUNTIF($B$6:$B6,"*?")*2,"",SUMPRODUCT(ISNUMBER(SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35))*(MONTH(data!$E$3:$E$35)=MONTH($E$2)),data!F$3:F$35)) คัดลอกขวาและลงล่าง
:shock: :roll: :D
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: sum ข้อมูลแบบมีเื่อนไข

#5

Post by March201711 »

ถ้าแทรก column ที่ sheet data 2 column แล้วทำไม่ sheet totaxl column F ค่า comm ยอดเป็น 0 ต้องปรับแก้อย่างไร
User avatar
puriwutpokin
Guru
Guru
Posts: 3801
Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365

Re: sum ข้อมูลแบบมีเื่อนไข

#6

Post by puriwutpokin »

March201711 wrote: Sat Dec 29, 2018 7:21 am ถ้าแทรก column ที่ sheet data 2 column แล้วทำไม่ sheet totaxl column F ค่า comm ยอดเป็น 0 ต้องปรับแก้อย่างไร
แนบไฟล์ล่าสุดที่แทรกคอลัมน์มาดูครับว่า แทรกตรงไหน ครับ
:shock: :roll: :D
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: sum ข้อมูลแบบมีเื่อนไข

#7

Post by March201711 »

ตามfile ที่แนบมาค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
puriwutpokin
Guru
Guru
Posts: 3801
Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365

Re: sum ข้อมูลแบบมีเื่อนไข

#8

Post by puriwutpokin »

ปรับเป็นที่ F6=IF(ROWS($B$6:$B6)>COUNTIF($B$6:$B6,"*?")*2,"",SUMPRODUCT(ISNUMBER(SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35))*(MONTH(data!$E$3:$E$35)=MONTH($E$2)),data!I$3:I$35))
:shock: :roll: :D
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: sum ข้อมูลแบบมีเื่อนไข

#9

Post by March201711 »

:D ช่วยอธิบายสูตรได้ไหมคะ จะได้นำไปประยุกต์ใช้กับงานอื่นๆค่ะ ขอบคุณมากเลยค่ะ :thup:
User avatar
puriwutpokin
Guru
Guru
Posts: 3801
Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365

Re: sum ข้อมูลแบบมีเื่อนไข

#10

Post by puriwutpokin »

March201711 wrote: Sat Dec 29, 2018 9:46 pm :D ช่วยอธิบายสูตรได้ไหมคะ จะได้นำไปประยุกต์ใช้กับงานอื่นๆค่ะ ขอบคุณมากเลยค่ะ :thup:
ตรงส่วนไหนไม่เข้าใจครับ ยกตัวอย่างมาดูครับเช่นอะไรบ้างที่ ต้องการทราบครับ :D
:shock: :roll: :D
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: sum ข้อมูลแบบมีเื่อนไข

#11

Post by March201711 »

F6=IF(ROWS($B$6:$B6)>COUNTIF($B$6:$B6,"*?")*2,"",SUMPRODUCT(ISNUMBER(SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35))*(MONTH(data!$E$3:$E$35)=MONTH($E$2)),data!I$3:I$35))
ตรง COUNTIF($B$6:$B6,"*?")*2,"",
และ SUMPRODUCT(ISNUMBER(SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35))*(MONTH(data!$E$3:$E$35)=MONTH($E$2)),data!I$3:I$35))
แล้วทำไมต้อง*month=month ด้วยคะ
มีหลักการคิดตรรกะอย่างไร
User avatar
puriwutpokin
Guru
Guru
Posts: 3801
Joined: Fri Jan 04, 2013 9:49 pm
Location: Bangkok
Excel Ver: MS.365

Re: sum ข้อมูลแบบมีเื่อนไข

#12

Post by puriwutpokin »

ตรงCOUNTIF($B$6:$B6,"*?")*2 เนื่องจากที่ B6:B17 มีสูตรอยู่ไม่ได้เป็นเซลว่างทั้งหมด จึงต้องใช้ "*?" นับตัวที่มีจำนวนที่เห็นจริงเท่านั้น
ส่วน ที่ต้อง *2 เพื่อให้มันมีผลนับเป็น 2 บรรทัด เพราะข้อมูลที่ต้องการคือซ้ำกัน 2บรรทัด พอค่ามากว่า ROWS($B$6:$B6) ก็ให้เป็นค่าว่าง
และ LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6) เพื่อหาค่าสุดท้ายที่ไม่ใช่ค่าว่าง
และ SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35) เพื่อหาค่าที่ไม่ใช่ค่าว่างที่เป็นค่าสุดท้าย โดยนำค่านั้นมาหาค่า คอลัมน์ D
และ ISNUMBER(SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35)) เพื่อค่าใดที่เป็นตัวเลขเพื่อจะได้ค่า TRUE , FALSE ไปคูณกับค่า (MONTH(data!$E$3:$E$35)=MONTH($E$2)) เพื่อให้ได้ตรงตามเดือนที่ตรงกับเงื่อนไข
โดย ISNUMBER(SEARCH(LOOKUP(2,1/($B$6:$B6<>""),$B$6:$B6),data!$D$3:$D$35))*(MONTH(data!$E$3:$E$35)=MONTH($E$2)) เมื่อคูณกันแล้วจะได้ค่า {0;0;0;1;0;1;0;1;1;0;1;1;1;1;0;1;1;1;0;0;1;1;1;0;0;0;0;0;0;0;0;0;0} ซึ่งค่านี้จะไปคูณ เพื่อแม็ชกันค่าช่วงที่ต้องการหาคือ ช่วงdata!I$3:I$35 ตามนี้ครับ
:shock: :roll: :D
March201711
Gold
Gold
Posts: 1047
Joined: Sat Mar 11, 2017 7:01 pm
Excel Ver: 2010, 365

Re: sum ข้อมูลแบบมีเื่อนไข

#13

Post by March201711 »

อธิบายเข้าใจกระจ่างเลยค่ะ เก่งมากๆเลย :thup:
ขอบคุณมากค่ะ :D
:D :D :D ในวาระโอกาสใกล้ถึงวันปีใหม่นี้ ขอให้ทุกๆท่านที่ช่วยเหลือคนอื่น ช่วยเหลือสังคม และคนที่เข้ามาดูกระทู้ในเวปนี้รวมทั้งเจ้าของเวป ทั้งครอบครัวของทุกๆท่าน จงมีความสุขและมีสุขภาพร่างกายแข็งแรง คิดสิ่งใดขอให้สมความปรารถนาทุกประการเลยนะคะ :D :D :D
Post Reply