หลาย ๆ ท่านตั้งใจซ่อน (Hide) ไว้แทนการลบทิ้งด้วยวิธีการเช่น คลิกขวาที่ตำแหน่งหัวบรรทัดแล้วเลือก Hide โดยเผื่อไว้ว่าโอกาสหน้าจะกลับมาใช้ จะได้ไม่ต้องคีย์เพิ่มเข้าไปใหม่ แต่ปัญหาคือหากมีการคำนวณเช่น ใช้สูตร Sum เพื่อรวมยอดตัวเลขไว้ ยอดผลรวมนั้นจะรวมบรรทัดที่ตั้งใจซ่อนด้วย
การรวมยอดเพื่อไม่ให้รวมบรรทัดที่ตั้งใจซ่อนไว้สามารถทำได้โดยใช้ฟังก์ชั่น Subtotal ครับ
และนอกจากหายอดรวมแล้ว ยังหาค่าเฉลี่ย ค่าน้อยที่สุด ค่ามากที่สุด ค่าเบี่ยงเบนมาตรฐาน การนับเฉพาะตัวเลข การนับทั้งหมดยกเว้นค่าว่าง เป็นต้น
ไวยากรณ์ของฟังก์ชัน Subtotal คือ
=subtotal(function_num,ref1,…)
function_num คือ ตัวเลขที่ใช้สรุปยอดรวม มีเป็น 2 แบบ แบบละ 11 ตัวคือ
- 1-11 ใช้สำหรับการสรุปยอดที่ได้จากการ Filter ตามปกติ หากในพื้นที่นั้นมีบรรทัดที่ตั้งใจซ่อนก็จะถูกสรุปเข้ามาด้วย
- 101-111 ใช้สำหรับสรุปยอดบรรทัดที่ไม่ถูกซ่อน หากพื้นที่นั้นมีบรรทัดที่ตั้งใจซ่อนจะไม่ถูกสรุปเข้ามาด้วย
ความหมายของตัวเลขทั้งหมดดูได้ที่นี่ครับ Subtotal function
ref1,… แทน ref1-ref254 หมายถึงพื้นที่ที่เราจะนำมาหายอดสรุป มีได้มากที่สุดถึง 254 ชุดแต่ละชุดคั่นด้วยเครื่องหมายคอมม่า
สมมุติที่เซลล์ B51 ต้องสรุปข้อมูลในช่วง B2:B50 แบบไม่รวมยอดที่ตั้งใจซ่อน โดยมีการซ่อนบรรทัดใด ๆ เอาไว้ก่อนแล้ว
🔢 ฟังก์ชันสำคัญที่น่าใช้งานมีดังนี้ครับ
- หากต้องการรวมยอดที่ B2:B50 โดยไม่รวมบรรทัดที่ตั้งใจซ่อน
=Subtotal(109,B2:B50) - หากต้องการนับเฉพาะตัวเลขที่ B2:B50 โดยไม่รวมบรรทัดที่ตั้งใจซ่อน
=Subtotal(102,B2:B50) - หากต้องการนับทั้งหมดยกเว้นค่าว่างที่ B2:B50 โดยไม่รวมบรรทัดที่ตั้งใจซ่อน
=Subtotal(103,B2:B50) - หากต้องการหาค่าที่มากที่สุดที่ B2:B50 โดยไม่รวมบรรทัดที่ตั้งใจซ่อน
=Subtotal(104,B2:B50) - หากต้องการหาค่าที่น้อยที่สุดที่ B2:B50 โดยไม่รวมบรรทัดที่ตั้งใจซ่อน
=Subtotal(105,B2:B50) - หากต้องการหาค่าเฉลี่ยที่ B2:B50 โดยไม่รวมบรรทัดที่ตั้งใจซ่อน
=Subtotal(101,B2:B50)
ด้านบนนี้เป็นการใช้ฟังก์ชัน Subtotal เพื่อไม่รวมบรรทัดที่เราตั้งใจซ่อนเอาไว้เท่านั้น ตัวหนังสือสีแดงคือความหมายของตัวเลข function_num ตามไวยากรณ์ด้านบน สังเกตว่าหลังวงเล็บเปิดของ Subtotal เราจะใช้ตัวเลขชุดที่เป็นตัวเลข 3 หลัก (1XX) ครับ
Revised: November 05, 2025, at 09:05


=Subtotal(9,B2:B50)จะหาผลรวมจากการกรองข้อมูล (Filter)
พวกที่เป็นเลขเดี่ยวทั้งหลายจะหาค่าได้ในลักษณะเฉพาะคือจากการ Filter มาเท่านั้นผมจึงไม่ได้กล่าวถึงครับถ้าตั้งใจซ่อนบรรทัดจากการ Filter มาอีกต่อหนึ่ง จะต้องใช้ตามที่ผมแนะนำมา ไม่เช่นนั้นค่าที่ได้จะไม่ถูกต้องเช่น Subtotal(9,B2:B50) จะให้ผลจากการ Filter มาถูกต้อง แต่หากเราตั้งใจซ่อนบรรทัด B10:B20 เพื่อตั้งใจจะไม่รวมยอด สูตรข้างต้นจะยังให้ค่าเดิมการจะให้ค่าที่ถูกต้องโดยไม่รวมบรรทัดที่ตั้งใจซ่อนต้องคีย์สูตร =Subtotal(109,B2:B50)ครับ 🙂
ดิฉันเข้ามาหาความรู้จากเวปนี้ค่ะ มีประโยชน์ในงานดิฉ้นมากเลย ต้องขอชมเชยด้วยใจจริงว่า "คนควน" เก่งจังเลยนะคะที่ให้ความรู้เรื่องเอ็กเซลล์ได้มากมายขนาดนี้ นับถือจริง ๆ ค่ะ
สวัสีดีครับคุณ May_BKK ยินดีที่ช่วยได้ครับ
คือผมมีปัญหาว่า แถวข้อมูลในexcel มันซ่อนเองอยู่บ่อย ๆ ควรแก้ไขปัญหานี้ยั้งไงดีครับ พอดีต้องการให้มันโชว์แต่ ลองกด unhide แล้วมันก็ไม่โผล่ออกมา ต้องมาคอยดึงออกทีละแถว ใช้เวลานานครับ พอมีวิธีแก้ไขไหมครับ ขอบคุณครับ
ถ้าเลือก Unhide แล้วไม่ แสดงออกมาแสดงว่าไม่ได้ Hide ไว้ก็เป็นได้ครับการแก้ไขให้ปรับความกว้างของแถวเสียใหม่ โดย1. เลือกสี่เหลี่ยมแรกก่อนอักษรคอลัมน์และตัวเลขแถว ซึ่งจะเป็นการเลือกทุกเซลล์ใน Worksheet2. นำเมาส์ไปวางตรงเส้นแบ่งแถวใด ๆ จนเห็นเมาส์เป็นลูกศร 2 หัวขึ้นบนและลงด้านล่าง3 ดับเบิ้ลคลิกการทำตามด้านบนจะเป็นการขยายความสูงของแถวให้พอดีกับอักขระที่บรรจุอยู่ในเซลล์นั้น ๆ ครับหรือหลังจากคลุมตามข้อ 1 แล้วสามารถลากด้วยมือเองแทนการดับเบิ้ลคลิกให้มีความสูง 12.75 Point หรือ 17 Pixel ซึ่งเป็นความสูงที่เป็นค่าเริ่มต้นครับ
ขอบคุณคะ
ขอบคุณมากๆนะคะสำหรับเทคนิคดีๆแบบนี้..มีประโยชน์ในการทำงานมากเลยค่ะ..^_^
ยินดีที่ช่วยได้ครับ
แล้วถ้าจะให้นับ A(ตัวอักษร)โดยที่ไม่นับบรรทัดที่ซ่อนจะใช้สูตรไหนครับ เห็นมีสูตรที่ใช้ =Subtotal(109,B2:B50)ตัวเลขตรงตำแหน่ง 109 คืออะไรครับเห็นมีหลายตัวมันใช้แทนค่าอะไรกันบ้างไม่เข้าใจ
การนับอักขระใช้ข้อ 3 คือตัวเลข 103 เลขใดแทนค่าอะไร อธิบายไว้แล้วตามด้านบนครับ
ขอบคุณมากครับ เข้ามาตอบเร็วดีกำลังต้องการด่วน