/ / วนรอบผ่านหนังสือและชีตใน Excel VBA

วนซ้ำผ่านหนังสือและชีตใน Excel VBA

ด้านล่างเราจะดูที่โปรแกรมมา Excel VBA ที่ ลูปผ่านเวิร์กบุคและเวิร์กชีทที่เปิดอยู่ทั้งหมดและแสดงชื่อทั้งหมด

สถานการณ์:

วนผ่านหนังสือและชีตตัวอย่าง

เพิ่มบรรทัดรหัสต่อไปนี้ลงในปุ่มคำสั่ง:

1. ก่อนอื่นเราจะประกาศสองวัตถุและหนึ่งตัวแปร วัตถุหนึ่งชนิดสมุดงานที่เราเรียกหนังสือวัตถุหนึ่งชนิดของแผ่นงานที่เราเรียกแผ่นงานและตัวแปรชนิด String ที่เราเรียกว่าข้อความ

Dim book As Workbook, sheet As Worksheet, text As String

2. เราต้องการวนรอบเวิร์กบุคที่เปิดอยู่ทั้งหมด เมื่อต้องการทำเช่นนี้เพิ่มบรรทัดรหัสต่อไปนี้:

For Each book In Workbooks

3. เราเขียนข้อความ "สมุดงาน:", ชื่อของสมุดงานและข้อความ "Worksheets:" "ไปยังข้อความตัวแปร

text = text & "Workbook: " & book.Name & vbNewLine & "Worksheets: " & vbNewLine

หมายเหตุ: คุณสามารถใช้ตัวดำเนินการ & to concatenate (join) elements เมื่อต้องการเริ่มต้นบรรทัดใหม่คุณสามารถใช้ vbNewLine

4. เมื่อต้องการวนรอบเวิร์กชีตทั้งหมดของสมุดงานให้เพิ่มโค้ดโค้ดต่อไปนี้:

For Each sheet In book.Worksheets

5. เราเขียนชื่อเวิร์กชีตของเวิร์กบุคไว้ในข้อความตัวแปร

text = text & sheet.Name & vbNewLine

6. ปิดวงที่สอง

Next sheet

7. เพิ่มเส้นสีขาว

text = text & vbNewLine

8. อย่าลืมปิดวงแรก

Next book

9. ในที่สุดเราจะแสดงข้อความตัวแปรโดยใช้ MsgBox

MsgBox text

10. ทดสอบโปรแกรม ก่อนที่คุณจะคลิกที่ปุ่มคำสั่งให้เวิร์กชีตของคุณอธิบายชื่อและเปิดสมุดงานเปล่าอีกอันหนึ่ง

ผล:

วนซ้ำผ่านหนังสือและชีตใน Excel VBA

อ่านเพิ่มเติมได้ที่: