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

Thread: หาค่าเฉลี่ยในช่วงเวลานาทีเดียวกัน

  1. #1
    chuchpink
    Guest

    หาค่าเฉลี่ยในช่วงเวลานาทีเดียวกัน

    เนื่องจากข้อมูลที่เก็บมาใน 1 นาทีอาจจะมีหลายค่า แต่ทั้งนี้ต้องการเอาค่าเหล่านั้นมาทำให้เป็นค่าเฉลี่ยในแต่ละนาที นั่นคือ ใน 1 นาทีจะได้ค่าเฉลี่ยมาเป็น 1 ค่าเท่านั้น ดังรูปด้านล่างครับ จะเขียนสูตรแบบไหนครับ ทั้งนี้ผมได้แนบ excel file มาด้วยครับ ขอบคุณมากๆครับ


  2. #2
    pichartyapan
    Guest
    Quote Originally Posted by chuchpink View Post
    เนื่องจากข้อมูลที่เก็บมาใน 1 นาทีอาจจะมีหลายค่า แต่ทั้งนี้ต้องการเอาค่าเหล่านั้นมาทำให้เป็นค่าเฉลี่ยในแต่ละนาที นั่นคือ ใน 1 นาทีจะได้ค่าเฉลี่ยมาเป็น 1 ค่าเท่านั้น ดังรูปด้านล่างครับ จะเขียนสูตรแบบไหนครับ ทั้งนี้ผมได้แนบ excel file มาด้วยครับ ขอบคุณมากๆครับ

    ได้สูตรแบบนี้ครับ
    {=SUM((LEFT($B$4:$B$39,5)=HOUR(E4)&":"&MINUTE(E4))*($C$4:$C$39))/SUM(--(LEFT($B$4:$B$39,5)=HOUR(E4)&":"&MINUTE(E4)))}

    เป็นสูตร sum Array ครับ โดยมีขั้นตอนคือ
    1) ดึงค่า 5 ตัวอักษรของ เวลาออกมา ด้วยสูตร left
    2) สร้าง text จากเวลาที่กำหนดไว้ ด้วยสูตร hour() & ":" & minute()
    3) สร้าง Array sum โดยการ sum ค่า actual / จำนวน ของเวลาแต่ละช่วงครับ

    ลองศึกษาในไฟล์แนบครับ

  3. #3
    Savarins
    Guest
    = AVERAGE( IF( TIME( HOUR($B$4:$B$39), MINUTE($B$4:$B$39), 0 ) = TIME( HOUR(E4), MINUTE(E4), 0 ), $C$4:$C$39) ) แล้วกด Ctrl+Shift+Enter ครับ

    คราวหน้ารบกวนตั้งชื่อไฟล์ให้สั้นและกระชับด้วยนะครับ

  4. #4
    chuchpink
    Guest
    Quote Originally Posted by Savarins View Post
    = AVERAGE( IF( TIME( HOUR($B$4:$B$39), MINUTE($B$4:$B$39), 0 ) = TIME( HOUR(E4), MINUTE(E4), 0 ), $C$4:$C$39) ) แล้วกด Ctrl+Shift+Enter ครับ

    คราวหน้ารบกวนตั้งชื่อไฟล์ให้สั้นและกระชับด้วยนะครับ


    ขอบคุณมากครับ
    คราวหน้าจะแก้ไข ให้กระชับกว่านี้นะครับ

  5. #5
    chuchpink
    Guest
    Quote Originally Posted by pichartyapan View Post
    ได้สูตรแบบนี้ครับ
    {=SUM((LEFT($B$4:$B$39,5)=HOUR(E4)&":"&MINUTE(E4))*($C$4:$C$39))/SUM(--(LEFT($B$4:$B$39,5)=HOUR(E4)&":"&MINUTE(E4)))}

    เป็นสูตร sum Array ครับ โดยมีขั้นตอนคือ
    1) ดึงค่า 5 ตัวอักษรของ เวลาออกมา ด้วยสูตร left
    2) สร้าง text จากเวลาที่กำหนดไว้ ด้วยสูตร hour() & ":" & minute()
    3) สร้าง Array sum โดยการ sum ค่า actual / จำนวน ของเวลาแต่ละช่วงครับ

    ลองศึกษาในไฟล์แนบครับ

    ขอบคุณมากครับ จะลองศึกษาดูครับ

  6. #6
    เอก
    Guest
    ไม่ทราบว่า ข้อมูลเวลาในคอลัมน์ B นั้น ได้มาอย่างไร เห็นว่าเป็น Text
    ถ้าทำให้ข้อมูลที่เข้ามาเป็น Time ได้ ก็สามารถเขียนสูตรง่ายๆ สั้นๆ ด้วย AVERAGEIFS

    การแปลงเวลาที่เป็น Text ให้เป็น Time สามารถ copy เซลว่างๆ เข้าไป Add ได้เลย

  7. #7
    chuchpink
    Guest
    Quote Originally Posted by เอก View Post
    ไม่ทราบว่า ข้อมูลเวลาในคอลัมน์ B นั้น ได้มาอย่างไร เห็นว่าเป็น Text
    ถ้าทำให้ข้อมูลที่เข้ามาเป็น Time ได้ ก็สามารถเขียนสูตรง่ายๆ สั้นๆ ด้วย AVERAGEIFS

    การแปลงเวลาที่เป็น Text ให้เป็น Time สามารถ copy เซลว่างๆ เข้าไป Add ได้เลย

    เป็นข้อมูลที่่ดึงออกมาจาก system ครับ เป็นข้อมูล operation ของเครื่องจักรครับ

  8. #8
    อย่าใช้สูตร Average เลยครับ คุณทราบไหมว่าสูตรนี้หายอดรวมกับนับเซลล์ว่าง เซลล์ตัวอักษร เซลล์ตัวเลขที่เป็นตัวอักษร ที่เป็นตัวหารอย่างไร

    ผมจะหาค่าเฉลี่ยโดยใช้สูตร Sum หรือ SumIF ที่ปรับให้หายอดรวมตามเงื่อนไขที่ชัดเจน หารด้วยจำนวนนับ ซึ่งจำนวนนับนั้นจะนับตามแบบใดก็แล้วแต่เราจะเลือกเอง
    Count
    CountA
    CountBlank
    Rows
    CountIF

Posting Permissions

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