Page 1 of 1

ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 2:06 pm
by manager
B38 ผลรวมจากชีทให้ตรงวันที่ บันทึกซ่อม ตั้งแต่ B3:B416 นับแบบมีเงื่อนไขจาก ชื่อ A (B61:B63 รวมแล้ว 3ครั้ง)
ขอบคุณครับ

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 2:56 pm
by ysamroeng
B38 =SUMPRODUCT(--(บันทึกซ่อม!$B$3:$B$416=B$3),--(บันทึกซ่อม!$A$3:$A$416=$A38))
Enter แล้วคัดลอกสูตรไปยังเซลอื่นๆ ที่ต้องการ

แต่...จากไฟล์ตัวอย่าง B38 ไม่น่าจะได้ 3 นะครับ เพราะ A38 เป็นวันที่ 3/2/2013
แต่ช่วง A61:A63 ของชีทบันทึกซ่อม เป็นวันที่ 3/1/2013 ซึ่งคนละเดือนกัน

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 3:01 pm
by manager
ขอโทษครับผิดบรรทัด
ขอบคุณมากครับ :cp: :cp:

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 4:09 pm
by manager
=SUMPRODUCT(--(บันทึกซ่อม!$B$3:$B$416=B$3),--(บันทึกซ่อม!$A$3:$A$416=$A38))
สูตรเป็นการรวมชื่อเป้นเดือนละครับจะต้องทำอย่างไร คือสูตรเดิมด้านบนเป็นรวมวันที่ในเเต่ละวัน เเต่ถ้าหาก
วันที่เปลี่ยนเป็นชื่อเดือน เช่น มกราคม จะต้องเปลี่ยนสูตรอย่างไรครับ

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 4:12 pm
by joo
:D ลองยกตัวอย่างคำตอบพร้อมเงื่อนไขมาสัก 2-3 ตัวอย่างครับ

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 4:15 pm
by manager
joo wrote::D ลองยกตัวอย่างคำตอบพร้อมเงื่อนไขมาสัก 2-3 ตัวอย่างครับ
ผมขอเเนบไฟล์ครับ
ขอบคุณครับ

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 4:24 pm
by joo
:D ลองแบบนี้ดูครับที่ B4 คีย์ =SUMPRODUCT(--(TEXT(บันทึกซ่อม!$A$3:$A$416,"ดดดด")=$A4),--(บันทึกซ่อม!$B$3:$B$416=B$3),--(บันทึกซ่อม!$A$3:$A$416<>""))
Enter >Copy ไปทางขวาและลงล่าง
คำตอบที่ได้อาจจะมากกว่าที่ให้ตัวอย่างไว้เนื่องจากจะรวมเดือนที่เข้าเงื่อนไขของทุกปี

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 5:00 pm
by manager
ขอบคุณทุกท่าน คุณjoo คุณysamroeng ท่านเจ้าของเว็ป"คนควน" ขอจงมีเเต่ความเจริญครับ
ขอบคุณจากใจ ไม่มีเว็ปแห่งนี้ผมจะเป็นอย่างไร?

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Tue Jul 02, 2013 5:23 pm
by ysamroeng
joo wrote::D ลองแบบนี้ดูครับที่ B4 คีย์ =SUMPRODUCT(--(TEXT(บันทึกซ่อม!$A$3:$A$416,"ดดดด")=$A4),--(บันทึกซ่อม!$B$3:$B$416=B$3),--(บันทึกซ่อม!$A$3:$A$416<>""))
Enter >Copy ไปทางขวาและลงล่าง
คำตอบที่ได้อาจจะมากกว่าที่ให้ตัวอย่างไว้เนื่องจากจะรวมเดือนที่เข้าเงื่อนไขของทุกปี
ขออนุญาตเพิ่มเติมครับ
1. เนื่องจากข้อมูลการซ่อม มีทั้งปี 2012 และ 2013 รวมกัน การตรวจสอบเงื่อนไขเดือน จึงควรตรวจสอบปีด้วย มิฉะนั้น ข้อมูลในบางเดือน อาจจะเป็นคนละปีกัน

2. เคยพบว่าการใช้ TEXT(บันทึกซ่อม!$A$3:$A$416,"ดดดด") ลักษณะนี้ อาจเกิดข้อผิดพลาดสำหรับบางเครื่อง ที่ตั้งโลเกชั่นใน Control Panel แตกต่างกัน ซึ่งถ้าไม่มีรหัสประเทศกำกับไว้ด้วย "ดดดด" บางครั้งก็แสดงผลลัพธ์เป็นภาษาอังกฤษ ซึ่งจะทำให้เงื่อนไขไม่ตรงกับใน SUMPRODUCT

ผมจึงปรับตารางใหม่ และแก้ไขสูตรเป็นดังนี้ครับ

=SUMPRODUCT(--(YEAR(บันทึกซ่อม!$A$3:$A$416)=$A$3),--(MONTH(บันทึกซ่อม!$A$3:$A$416)=ROWS($4:4)),--(บันทึกซ่อม!$B$3:$B$416=B$3),--(บันทึกซ่อม!$A$3:$A$416<>""))

ลองดูในตัวอย่าง

Re: ผลนับครั้งที่เป็นชื่อต่อวัน

Posted: Wed Jul 03, 2013 7:57 am
by manager
ขอบคุณเเละก็ขอบคุณครับ :thup: :thup: