Note: The other languages of the website are Google-translated. Back to English
ล็อกอิน  \/ 
x
or
x
สมัครสมาชิก  \/ 
x

or

วิธีการเฉลี่ย 5 ค่าสุดท้ายของคอลัมน์เมื่อป้อนตัวเลขใหม่

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

ค่าเฉลี่ย 5 ค่าสุดท้ายของคอลัมน์เป็นตัวเลขใหม่ที่ป้อนด้วยสูตร


ลูกศรสีฟ้าฟองขวา ค่าเฉลี่ย 5 ค่าสุดท้ายของคอลัมน์เป็นตัวเลขใหม่ที่ป้อนด้วยสูตร

สูตรอาร์เรย์ต่อไปนี้อาจช่วยคุณแก้ปัญหานี้ได้โปรดทำดังนี้:

ป้อนสูตรนี้ลงในเซลล์ว่าง:

=IF(COUNT(A:A),AVERAGE(INDEX(A:A,LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),MIN(5,COUNT(A1:A10000)))):A10000),"no data") (A: A คือคอลัมน์ที่มีข้อมูลที่คุณใช้ A1: A10000 เป็นช่วงไดนามิกคุณสามารถขยายได้ตราบเท่าที่คุณต้องการและจำนวน 5 ระบุค่า n สุดท้าย) จากนั้นกด Ctrl + Shift + Enter คีย์เข้าด้วยกันเพื่อรับค่าเฉลี่ยของตัวเลข 5 ตัวสุดท้าย ดูภาพหน้าจอ:

doc-average-last-5-1

และตอนนี้เมื่อคุณป้อนตัวเลขใหม่หลังข้อมูลเดิมค่าเฉลี่ยจะเปลี่ยนไปเช่นกันดูภาพหน้าจอ:

doc-average-last-5-2

หมายเหตุ: ถ้าคอลัมน์ของเซลล์มี 0 ค่าคุณต้องการยกเว้นค่า 0 จากตัวเลข 5 ตัวสุดท้ายของคุณสูตรข้างต้นจะใช้ไม่ได้ที่นี่ฉันสามารถแนะนำสูตรอาร์เรย์อื่นให้คุณเพื่อรับค่าเฉลี่ย 5 ค่าสุดท้ายที่ไม่ใช่ศูนย์ โปรดป้อนสูตรนี้:

=AVERAGE(SUBTOTAL(9,OFFSET(A1:A10000,LARGE(IF(A1:A10000>0,ROW(A1:A10000)-MIN(ROW(A1:A10000))),ROW(INDIRECT("1:5"))),0,1)))จากนั้นกด Ctrl + Shift + Enter คีย์เพื่อให้ได้ผลลัพธ์ที่คุณต้องการดูภาพหน้าจอ:

doc-average-last-5-3


บทความที่เกี่ยวข้อง:

วิธีการเฉลี่ยทุกๆ 5 แถวหรือคอลัมน์ใน Excel

วิธีการเฉลี่ยค่า 3 อันดับบนหรือล่างใน Excel


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    J.Tombo · 7 months ago
    Hello, I would like average the lowest 10 values of the last 20 added to a set of data. After reading this one here and another one of your examples, I now know how to average the lowest 10 values of 20 and how to grab only the last 20 values for averaging, but I need to combine them so I only average the lowest 10 values of the last and or most resent 20 add to the set of data. Please let me know if you can help, thank you JT.
  • To post as a guest, your comment is unpublished.
    Paul · 1 years ago
    =IF(COUNT(A:A),AVERAGE(INDEX(A:A,LARGE(IF(ISNUMBER(A1:A10000),ROW(A1:A10000)),MIN(5,COUNT(A1:A10000)))):A10000),"no data")

    Does not work for me.

    Here is my version:
    =IF(COUNT(C:C),AVERAGE(INDEX(C:C,LARGE(IF(ISNUMBER(C2:C10000),ROW(C2:C10000)),MIN(5,COUNT(C2:C10000))))):C10000)

    The error I get is: Wrong data type.
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, Paul,
      Do you press the Ctrl + Shift + Enter keys together after pasting the above formula?
      Please try it.