Thep Excel

EXPAND – ขยายขนาดตารางพร้อมเติมค่า (Padding)

EXPAND ใช้ขยายขนาดของตารางข้อมูลให้ใหญ่ขึ้นตามจำนวนแถวหรือคอลัมน์ที่ระบุ หากตารางเดิมมีขนาดเล็กกว่า ส่วนที่เพิ่มขึ้นมาจะแสดงค่าเป็น #N/A (ค่าเริ่มต้น) หรือค่าที่เรากำหนดเองได้ (pad_with) มีประโยชน์มากในการปรับขนาดข้อมูลให้เท่ากันก่อนนำไปรวมด้วย VSTACK หรือ HSTACK

=EXPAND(array, rows, [columns], [pad_with])

By ThepExcel AI Agent
1 December 2025

Function Metrics


Popularity
7/10

Difficulty
5/10

Usefulness
8/10

Syntax & Arguments

=EXPAND(array, rows, [columns], [pad_with])

Argument Type Required Default Description
array Range/Array Yes ตารางหรือช่วงข้อมูลต้นฉบับที่ต้องการขยายขนาด
rows Number Yes จำนวนแถวทั้งหมดที่ต้องการ (ต้องมากกว่าหรือเท่ากับจำนวนแถวเดิม)
columns Number Optional Same as array จำนวนคอลัมน์ทั้งหมดที่ต้องการ (ต้องมากกว่าหรือเท่ากับจำนวนคอลัมน์เดิม)
pad_with Any Optional #N/A ค่าที่จะเติมลงในช่องว่างที่เกิดขึ้นใหม่ (ถ้าไม่ระบุจะเป็น #N/A)

How it works

เตรียม Template สำหรับกรอกข้อมูล

สร้างตารางเปล่าขนาดมาตรฐาน (เช่น 100 แถว) รอรับข้อมูล โดยให้แสดงขีด (-) หรือข้อความ "รอข้อมูล" ในบรรทัดที่ยังไม่มีข้อมูลจริง

แก้ปัญหา HSTACK/VSTACK ข้อมูลไม่เท่ากัน

เมื่อต้องรวมตารางที่มีขนาดไม่เท่ากัน EXPAND ช่วยเติมเต็มส่วนที่ขาดให้เท่ากันก่อนรวม เพื่อป้องกัน Error #N/A ที่ควบคุมไม่ได้

Examples

ขยายตารางให้ครบ 10 แถว (เติมขีด)
EXPAND(A2:B6, 10, , "-")
สมมติว่าช่วง A2:B6 มีข้อมูลอยู่ 5 แถว
– สูตรจะขยายให้เป็น 10 แถว โดยคง 2 คอลัมน์เท่าเดิม (เพราะไม่ระบุ columns)
– 5 แถวแรกเป็นข้อมูลเดิม ส่วน 5 แถวใหม่จะแสดงเครื่องหมาย "-"
Excel Formula:

=EXPAND(A2:B6, 10, , "-")

Result:

ตาราง 10 แถว (5 แถวล่างเป็น -)

ขยายตารางเป็น 5×5 (เติมเลข 0)
EXPAND(Data, 5, 5, 0)
ขยายตาราง Data ให้เป็นสี่เหลี่ยมจัตุรัสขนาด 5×5 ช่องที่ขยายเพิ่มขึ้นมาจะถูกเติมด้วยเลข 0 เหมาะสำหรับเตรียมข้อมูลเพื่อคำนวณทางคณิตศาสตร์
Excel Formula:

=EXPAND(Data, 5, 5, 0)

Result:

ตารางขนาด 5x5 (ช่องว่างเป็น 0)

ขยายตารางด้วยข้อความว่าง (Empty String)
EXPAND(List, 20, , "")
ขยาย List ให้ครบ 20 แถว โดยส่วนที่ไม่มีข้อมูลให้แสดงเป็นข้อความว่าง (") ทำให้ดูเหมือนเซลล์เปล่า ไม่รกสายตาด้วย #N/A
Excel Formula:

=EXPAND(List, 20, , "")

Result:

ตาราง 20 แถว (ส่วนเกินเป็นเซลล์ว่าง)

ทำให้ 2 ตารางเท่ากันก่อนรวมร่าง
HSTACK(Table1, EXPAND(Table2, ROWS(Table1), , "-"))
สมมติ Table1 มี 10 แถว แต่ Table2 มีแค่ 5 แถว ถ้า HSTACK เลยจะเกิด #N/A ในส่วนของ Table2
– สูตรนี้ใช้ EXPAND ขยาย Table2 ให้สูงเท่ากับ Table1 (10 แถว) ก่อน แล้วค่อยนำไปต่อกันด้วย HSTACK
Excel Formula:

=HSTACK(Table1, EXPAND(Table2, ROWS(Table1), , "-"))

Result:

สองตารางต่อกันแนวนอน

FAQs

ถ้ากำหนด rows/columns น้อยกว่าขนาดเดิม จะเกิดอะไรขึ้น?

จะเกิด Error #VALUE! ครับ EXPAND ใช้สำหรับ “ขยาย” เท่านั้น ถ้าต้องการลดขนาดหรือตัดข้อมูลออก ต้องใช้ฟังก์ชัน TAKE หรือ DROP แทน

ทำไมค่า Default ถึงเป็น #N/A?

เพื่อเตือนให้รู้ว่านี่คือข้อมูลที่ไม่มีอยู่จริง (Not Available) ถ้าต้องการให้เป็นค่าอื่น ต้องระบุในอาร์กิวเมนต์ pad_with เสมอ

ใช้กับ Dynamic Array ได้ไหม?

ได้ดีเยี่ยมครับ EXPAND ออกแบบมาเพื่อจัดการ Dynamic Array โดยเฉพาะ และผลลัพธ์ก็จะ Spill ออกมาเป็น Array เช่นกัน

Resources & Related

Additional Notes

ฟังก์ชัน EXPAND ใน Excel ช่วยขยายขนาดของตารางหรืออาร์เรย์ให้ได้จำนวนแถวและคอลัมน์ตามที่ต้องการ โดยส่วนที่ขยายเพิ่มขึ้นมาจะถูกเติมด้วยค่าที่ระบุ (Pad with) เช่น 0, ขีด (-), หรือข้อความว่าง

Leave a Reply

Your email address will not be published. Required fields are marked *