เพื่อมุ่งให้เกิดคุณภาพจากการอบรมสูงสุด Excel Expert Training ให้การอบรม Excel กลุ่มเล็กๆ ไม่เกิน 6 คนทุกคนสามารถเรียนรู้ Excel อย่างใกล้ชิด จะมาคนเดียวหรือมาเป็นกลุ่มแล้วนัดวันอบรมแบบส่วนตัวก็ได้ ผู้เข้าอบรมทุกคนสามารถติดตามเนื้อหาที่อบรมได้อย่างชัดเจนจากจอภาพด้านหน้าของตัวเอง
Results 1 to 5 of 5

Thread: การเช็คข้อมูลผลบวก=0 โดยมีเงื่อนไข

  1. #1
    poodang
    Guest

    การเช็คข้อมูลผลบวก=0 โดยมีเงื่อนไข

    จากตัวอย่างภาพข้างล่างต้องการให้เหลือข้อมูลเฉพาะฝั่งขวามือค่ะ(อาจจะอยู่ที่ชีทไหนก็ได้)แต่มีเงื่อนไขคือ(สีขาวไม่อยู่ในเงื่อนไขค่ะเนื่องจากผลรวม=0)
    - ยอดผลรวมของCodeนั้นๆในแต่ละOrder No.รวมกันจะต้องไม่เท่ากับ0

    รบกวนผู้รู้ทุกท่านหน่อยนะคะ เพราะข้อมูลจริงที่ใช้ทำมีจำนวนเป็นหมื่นๆเลยค่ะมีไฟล์ตัวอย่างแนบมาด้วยนะคะ ไม่รู้ว่าต้องใช้สูตรหรือว่าวิธีการแบบใดบ้าง ขอบคุณมากค่ะ


  2. #2
    เอก
    Guest
    วิธีทำ ใช้การมาร์คตัวเลขไว้ในคอลัมน์ E เฉพาะบรรทัดที่ตรงตามเงื่อนไข
    1. ใส่เลข 0 ที่เซล E1
    2. ที่ E2 พิมพ์สูตร =IF(SUMPRODUCT(($A$2:$A$14=A2)*($B$2:$B$14=B2)*($D$2:$D$14))<>0,LOOKUP(99999999,E$1:E1)+1,"")
    3. คัดลอกสูตรจาก E2 ลงมาจนครบทุกบรรทัด

    การแสดงผล เฉพาะบรรทัดที่ตรงตามเงื่อนไข
    1. ที่เซล F2 พิมพ์สูตร
    =IF(ROWS(F$2:F2)<=MAX($E:$E),LOOKUP(ROWS(F$2:F2),$E:$E,A:A),"")
    2. คัดลอกสูตรไปทุกคอลัมน์และทุกบรรทัดที่ต้องการ

    กรุณาดูในไฟล์ตัวย่างเพิ่มเติม

  3. #3
    vajra
    Guest
    ขอเสนออีกวิธีดังนี้ครับ ที่
    E2 = A2&B2
    F2 = SUMIF($E:$E,E2,$D:$D)
    copy E2:F2 ลงไปทุกแถว
    ค่าที่ได้ใน Column F จะเป็นสองกลุ่ม คือ ที่เป็น 0 และ ไม่เท่ากับ 0
    แล้วใช้ AutoFilter กรองตามกลุ่มที่ต้องการ ดังตัวอย่างใน Attached File

  4. #4
    สมเกียรติ
    Guest
    ปัญหานี้ไม่ง่ายเพราะต้องการเทียบรหัสร่วมกับตัวเลขปริมาณ พอรับเข้าแล้วหากมีการส่งออกให้ตัดรายการนั้นทิ้งไปใช่ไหมครับ

    ถ้าใช้แค่รหัสอย่างเดียวจะใช้สูตรนับได้ทันที แต่นี่ต้องใช้รหัสกับตัวเลขมาตัดสิน วิธีของผมจึงต้องเอารหัสมาต่อกับตัวเลข โดยตัดเครื่องหมายลบทิ้งไปด้วยสูตร ABS แล้วสร้างรหัสใหม่มาใช้งานด้วยสูตร

    NewCode
    =Code&ABS(Quan)

    พอได้รหัสใหม่แล้วอะไรๆก็จะง่ายขึ้นทันทีครับ ยกโครงสร้างสูตร MultipleMatch มาดัดแปลงเพื่อหาลำดับเลขที่รายการที่ใช้งานต่อตามนี้

    UsedNum
    {=SMALL(IF(COUNTIF(NewCode,NewCode)=1,Num),Num)}

    สูตรนี้ให้สร้างแบบ Array พร้อมกันทุกเซลล์จาก H2:H12 (หรือเลือกเซลล์ยาวลงไปเท่าที่คิดว่าจะมีจำนวนรายการคงเหลืออยู่) และการที่สร้างพร้อมกันทีเดียวจึงทำให้สูตรนี้คิดคำตอบแค่ครั้งเดียว

    โดยส่วนของสูตร COUNTIF(NewCode,NewCode)=1 ทำหน้าที่ตรวจสอบตำแหน่งรายการที่มีรายการเดียว เพราะยังไม่มีคู่รายการมาตัดทิ้ง

    พอได้ตำแหน่งรายการแล้ว จะนำตำแหน่งที่ได้ไปใช้สร้างประโยชน์ได้อีกเยอะ โดยหากจะหารายละเอียดของแต่ละรายการให้ใช้สูตร
    =IF(ISERROR($H2),0,INDEX(B$2:B$14,$H2))

    ผมแนะนำให้ใช้ 0 ในกรณีที่เกิด Error แทน จากนั้นใช้ Format 0;-0; เพื่อไม่แสดงค่า 0 (ผมไม่แนะนำให้ใช้ "" แทน 0)

    ลองค้นหาคำถามเก่าๆในฟอรัมเรื่อง MultipleMatch ว่ามีที่ไปที่มาอย่างไรดูนะครับ

  5. #5
    poodang
    Guest
    ขอบคุณทุกท่านมากค่ะที่ช่วยเข้ามาตอบ ได้ความรู้เพิ่มขึ้นเยอะเลยค่ะ(งานนี้รอดตายแล้ว:lol แต่คงต้องศึกษาเพิ่มเติมอีกหน่อยเพราะบางสูตรไม่เคยเห็นและใช้เลยค่ะ :great:

Similar Threads

  1. Replies: 2
    Last Post: 31 Mar 2009, 13:30
  2. Replies: 7
    Last Post: 19 Jan 2009, 23:51

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •