Thep Excel

COLUMNบอกเลขคอลัมน์

COLUMN ส่งคืนหมายเลขคอลัมน์ (Column Number) ของเซลล์หรือช่วงที่ระบุ ส่งคืนตัวเลขคอลัมน์ 1, 2, 3… (A=1, B=2 เป็นต้น) มีประโยชน์ในการระบุตำแหน่งคอลัมน์แบบไดนามิก

fx
=COLUMN([reference])

ความนิยม8/10
ความยาก3/10
ประโยชน์9/10

อัปเดต 2 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
[reference]ไม่บังคับ Reference current_column เซลล์ที่ต้องการทราบเลขคอลัมน์ (ว่าง = เซลล์ปัจจุบัน)

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

Additional Notes

ฟังก์ชัน COLUMN คืนหมายเลขคอลัมน์ของเซลล์หรือช่วงที่ระบุ เป็นตัวเลข 1, 2, 3… (A=1, B=2, C=3 ไปเรื่อยๆ) ถ้าไม่ใส่ reference จะคืนเลขคอลัมน์ของเซลล์ที่วางสูตรอยู่เอง

ใช้บ่อยตอนต้องการสร้างสูตรที่ ‘รู้ตัวเอง’ ว่าอยู่คอลัมน์ไหน แล้วปรับพฤติกรรมตามนั้น เช่น สร้างหัวตารางเดือนที่เลื่อนไปเองเมื่อลากสูตรไปทางขวา, ทำ Alternate Column Shading ด้วย MOD(COLUMN(),2), สร้างลำดับเลข 1 ถึง N แบบ spill array ในเวอร์ชัน Microsoft 365, หรือส่งเลขคอลัมน์เข้า INDEX/OFFSET เพื่ออ้างอิงข้อมูลแบบไดนามิก

ข้อควรระวัง: ใน Excel รุ่นเก่าก่อน 365 การใส่ range หลายคอลัมน์ให้ COLUMN() จะได้แค่เลขคอลัมน์แรกกลับมา ไม่ spill เป็น array แบบรุ่นใหม่ครับ

Examples

ตัวอย่างที่ 1: หาเลขคอลัมน์ของเซลล์เฉพาะCOLUMN(CellC5)

สมมติว่า CellC5 เป็น Named Range ที่อ้างถึงเซลล์ C5
สูตรจะคืนค่า 3 ซึ่งเป็นหมายเลขคอลัมน์ของ CellC5 เพราะ C เป็นคอลัมน์ที่ 3 นับจาก A=1

fx
=COLUMN(CellC5)

ผลลัพธ์3
ตัวอย่างที่ 2: สร้างหัวตารางเดือนแบบไดนามิกTEXT(DATE(2026,COLUMN(A1),1),"mmmm")

ใช้ COLUMN(A1) เป็นเลขเดือน (1) แล้วส่งเข้า DATE เพื่อสร้างวันที่ 1 มกราคม 2026 จากนั้น TEXT แปลงเป็นชื่อเดือน
ลากสูตรนี้ไปทางขวา เลขคอลัมน์จะเพิ่มเป็น 2, 3, 4… หัวตารางก็เปลี่ยนเป็นกุมภาพันธ์ มีนาคม เมษายน ให้อัตโนมัติ ไม่ต้องพิมพ์ชื่อเดือนเอง 12 ครั้ง

fx
=TEXT(DATE(2026,COLUMN(A1),1),"mmmm")

ผลลัพธ์"มกราคม"
ตัวอย่างที่ 3: สร้างลำดับเลขคอลัมน์ (Spill Range)COLUMN(MyRange)

สมมติว่า MyRange เป็น Named Range ที่อ้างถึงช่วง A1:C1
ใน Excel 365 สูตรจะคืนค่าหมายเลขคอลัมน์เป็น Array {1,2,3} spill ออกมาทันที แต่ถ้าเป็น Excel รุ่นเก่าก่อน 365 จะได้แค่เลขคอลัมน์แรก (1) กลับมาเท่านั้น

fx
=COLUMN(MyRange)

ผลลัพธ์{1,2,3}
ตัวอย่างที่ 4: สลับสีคอลัมน์ (Alternate Column Shading) ด้วย Conditional FormattingMOD(COLUMN(),2)=0

MOD(COLUMN(),2) หารเลขคอลัมน์ปัจจุบันด้วย 2 แล้วเอาเศษ ถ้าเป็นคอลัมน์คู่เศษจะเป็น 0 ทำให้เงื่อนไข =0 เป็น TRUE
ใช้เป็นสูตรใน Conditional Formatting เพื่อลงสีสลับคอลัมน์คู่-คี่ ให้ตารางอ่านง่ายขึ้นโดยไม่ต้องไล่ทาสีทีละคอลัมน์เอง

fx
=MOD(COLUMN(),2)=0

ผลลัพธ์TRUE (ถ้าอยู่คอลัมน์คู่ เช่น B, D, F)
ตัวอย่างที่ 5: แปลงเลขคอลัมน์เป็นตัวอักษรCHAR(64+COLUMN())

ใช้ CHAR เพื่อแปลงเลขคอลัมน์เป็นตัวอักษร โดย CHAR(65)=A ดังนั้น CHAR(64+เลขคอลัมน์) จะได้ A เมื่อคอลัมน์=1, B เมื่อคอลัมน์=2, C เมื่อคอลัมน์=3
ใช้ได้แค่คอลัมน์ A-Z (1-26) เท่านั้น ถ้าเกิน Z ต้องใช้ ADDRESS หรือ SUBSTITUTE(ADDRESS(…)) แทน

fx
=CHAR(64+COLUMN())

ผลลัพธ์"C" (ถ้าอยู่คอลัมน์ 3)

FAQs

COLUMN() ส่งคืนอะไร?+

COLUMN ส่งคืนหมายเลขคอลัมน์เป็นตัวเลข (1-16384 สำหรับ Excel modern, A=1, B=2)

ความแตกต่างระหว่าง COLUMN() กับ COLUMN(A1)?+

COLUMN() ส่งคืนคอลัมน์ปัจจุบัน COLUMN(A1) ส่งคืนคอลัมน์ของเซลล์ A1 (เสมอ 1)

COLUMN ใช้ได้กับ range ไหม?+

ได้ แต่ถ้า range มีหลายคอลัมน์ จะส่งคืนหมายเลขคอลัมน์แรก

สามารถแปลงเลขคอลัมน์เป็นตัวอักษร (A, B, C)?+

ใช้ CHAR(64+COLUMN()) สำหรับ A-Z หรือใช้ Regex/VBA สำหรับ A-ZZ

ROW กับ COLUMN สามารถใช้ร่วมกันได้ไหม?+

ได้ครับ สร้าง unique ID เช่น =ROW()&"_"&COLUMN() ได้ "5_3"

จะอ้างอิง cell ตามหมายเลข row/column?+

ใช้ INDEX() หรือ INDIRECT() เช่น =INDEX(Range, ROW()-header, COLUMN()-1)

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ COLUMN จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้COLUMNLookup and reference
Lookup and reference (5)
ADDRESS

ADDRESS สร้างข้อความที่เป็นตำแหน่งเซลล์จากหมายเลขแถวและคอลัมน์ รองรับ Absolute Mixed Relative และสไตล์ R1C1 มักใช้คู่กับ INDIRECT เพื่อสร้าง Dynamic Reference

CHOOSECOLS

CHOOSECOLS ใช้ดึงคอลัมน์ที่ต้องการจากตารางหรือ Array โดยระบุเลขลำดับคอลัมน์ สามารถดึงได้หลายคอลัมน์พร้อมกัน จัดลำดับใหม่ หรือทำซ้ำคอลัมน์เดิมได้ รองรับการนับคอลัมน์จากขวาสุดโดยใช้เลขลบ (เช่น -1 คือคอลัมน์ขวาสุด)

COLUMNS

นับจำนวนคอลัมน์ทั้งหมดในช่วงข้อมูลหรืออาร์เรย์ที่ระบุ ใช้บ่อยคู่กับ OFFSET หรือ VLOOKUP เพื่อทำสูตรแบบ dynamic ที่ปรับตามขนาดตารางเอง

ROW

ROW ส่งคืนหมายเลขแถว (Row Number) ของเซลล์หรือช่วงที่ระบุ ส่งคืนตัวเลขแถว 1, 2, 3… มีประโยชน์ในการกำหนดหมายเลขลำดับแบบไดนามิก และสร้างสูตรที่ปรับตัวตามตำแหน่ง

ROWS

ส่งกลับจำนวนแถวในอาร์เรย์หรือการอ้างอิง ใช้สร้างสูตรแบบ dynamic ที่ขยายขนาดตามข้อมูลจริง ไม่ต้องมานับแถวเองทุกครั้งที่ข้อมูลเปลี่ยน

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่