วิธีนับแถวในตารางโดยใช้ vba (พร้อมตัวอย่าง)


คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อนับจำนวนแถวในตารางใน Excel โดยใช้ VBA:

 SubCountTableRow ()

Dim tbl As ListObject

'specify table to count rows in
Set tbl = ActiveSheet.ListObjects(" Table1 ")

'create message box that displays row count
MsgBox " Total Rows: " & tbl.Range.Rows.Count & vbNewLine & _
       " Header Rows: " & tbl.HeaderRowRange.Rows.Count & vbNewLine & _
       " Body Rows: " & tbl.ListRows.Count

'set tbl variable to Nothing
Set tbl = Nothing

End Sub

ตัวอย่างนี้นับจำนวนแถวต่อไปนี้สำหรับตารางบนแผ่นงานที่ใช้งานเรียกว่า Table1 :

  • จำนวนบรรทัดทั้งหมด
  • จำนวนบรรทัดส่วนหัวทั้งหมด
  • จำนวนเส้นลำตัวทั้งหมด

เราใช้ฟังก์ชัน MsgBox เพื่อสร้างกล่องข้อความที่แสดงแต่ละค่าเหล่านี้ในกล่องข้อความเดียว

หมายเหตุ : เราใช้คำสั่ง vbNewLine เพื่อแทรกบรรทัดใหม่และสร้างกล่องข้อความที่มีหลายบรรทัด

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

ตัวอย่าง: วิธีนับแถวในตารางโดยใช้ VBA

สมมติว่าเรามีตารางต่อไปนี้เรียกว่า Table1 ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:

เราสามารถสร้างมาโครต่อไปนี้เพื่อนับจำนวนแถวในตารางนี้:

 SubCountTableRow ()

Dim tbl As ListObject

'specify table to count rows in
Set tbl = ActiveSheet.ListObjects(" Table1 ")

'create message box that displays row count
MsgBox " Total Rows: " & tbl.Range.Rows.Count & vbNewLine & _
       " Header Rows: " & tbl.HeaderRowRange.Rows.Count & vbNewLine & _
       " Body Rows: " & tbl.ListRows.Count

'set tbl variable to Nothing
Set tbl = Nothing

End Sub

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

กล่องข้อความบอกเราว่ามีทั้งหมด 10 แถวในตาราง

นอกจากนี้ยังบอกเราว่ามี 1 แถวส่วนหัวและ 9 แถวเนื้อหา

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

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

วิธีนับค่าที่ไม่ซ้ำในช่วงโดยใช้ VBA
วิธีนับจำนวนแถวในช่วงโดยใช้ VBA
วิธีนับเซลล์ด้วยข้อความเฉพาะโดยใช้ VBA

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

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