Vba: วิธีค้นหาคอลัมน์ที่ใช้ล่าสุด


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ใน VBA เพื่อค้นหาคอลัมน์ที่ใช้ล่าสุดในแผ่นงาน Excel:

 Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub

ตัวอย่างนี้ค้นหาคอลัมน์ที่ใช้ล่าสุดในแผ่นงานปัจจุบันและส่งกลับผลลัพธ์ในเซลล์ A14

หากคุณต้องการแสดงคอลัมน์สุดท้ายของกล่องข้อความแทน คุณสามารถใช้ไวยากรณ์ต่อไปนี้:

 Sub FindLastColumn()
Dim LastCol As Long
    
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column

MsgBox " Last Column: " & LastCol
End Sub

ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ

ที่เกี่ยวข้อง: VBA: วิธีค้นหาบรรทัดที่ใช้ล่าสุด

ตัวอย่างที่ 1: ค้นหาคอลัมน์สุดท้ายโดยใช้ VBA และแสดงผลลัพธ์ในเซลล์

สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน Excel ที่มีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:

เราสามารถสร้างแมโครต่อไปนี้เพื่อค้นหาคอลัมน์สุดท้ายที่ใช้ในแผ่นงาน Excel นี้และแสดงผลลัพธ์ในเซลล์ A14 :

 Sub FindLastColumn()
Range(" A14 ") = Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column
End Sub

เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:

โปรดสังเกตว่าเซลล์ A14 มีค่า 2

สิ่งนี้บอกเราว่าคอลัมน์สุดท้ายที่ใช้ในชีตนี้คือคอลัมน์ 2

นอกจากนี้ โปรดทราบว่าหากคุณมีคอลัมน์ว่างก่อนคอลัมน์ที่ใช้ มาโครนี้จะค้นหาคอลัมน์ที่ใช้ล่าสุดเสมอ

ตัวอย่างเช่น สมมติว่าเราเรียกใช้แมโครบนชุดข้อมูลต่อไปนี้:

เซลล์ A14 มีค่า 5 เนื่องจากเป็นคอลัมน์สุดท้ายที่มีค่า

ตัวอย่างที่ 2: ค้นหาคอลัมน์สุดท้ายโดยใช้ VBA และแสดงผลลัพธ์ในกล่องข้อความ

สมมติว่าเราต้องการค้นหาคอลัมน์ที่ใช้ล่าสุดในแผ่นงานและแสดงหมายเลขคอลัมน์ในกล่องข้อความ

เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:

 Sub FindLastColumn()
Dim LastCol As Long
    
LastCol=Cells.Find("*",Range(" A1 "),xlFormulas,xlPart,xlByColumns,xlPrevious,False).Column

MsgBox " Last Column: " & LastCol
End Sub

เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:

VBA ค้นหาคอลัมน์ที่ใช้ล่าสุด

กล่องข้อความบอกเราว่าคอลัมน์สุดท้ายที่ใช้ในแผ่นงานคือคอลัมน์ 2

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับวิธี VBA Find ได้ที่นี่

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:

VBA: วิธีคำนวณค่าเฉลี่ยของช่วง
VBA: วิธีนับจำนวนแถวในช่วง
VBA: วิธีลบค่าที่ซ้ำกันในช่วง

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *