บางครั้งเพื่อให้คำนวณได้ง่าย เราจำเป็นต้อง แบ่งแผ่นงาน Excel ออกเป็นหลายแผ่นตามแถว . ในบทความนี้ เราจะมาเรียนรู้วิธีการทำโดย Microsoft Excel VBA โค้ดพร้อมตัวอย่างและคำอธิบายที่สวยงาม
สมุดแบบฝึกหัด
ดาวน์โหลดสมุดงานและแบบฝึกหัดต่อไปนี้
Excel VBA เพื่อแยกแผ่นงาน Excel ออกเป็นหลายแผ่นตามแถว
VBA (Visual Basic for Application) เป็นหนึ่งในภาษาโปรแกรมยอดนิยมสำหรับ Microsoft Excel ในการพัฒนาฟังก์ชันที่ผู้ใช้กำหนด เราสามารถใช้ Excel VBA ง่ายต่อการเรียนรู้และสมัครง่าย
แนะนำชีตที่ต้องแบ่งออกเป็นหลายชีตใน Excel
สมมติว่าเรามีชุดข้อมูล (B4:C10 ) ของพนักงานที่มีชั่วโมงการทำงานใน Sheet1 . เราจะแบ่งแผ่นงานนี้ออกเป็นหลายแผ่น . แต่ละแผ่นจะมีสองแถว
ขั้นตอนที่ 1:เปิดหน้าต่าง VBA เพื่อแยกแผ่นงาน Excel ออกเป็นหลายส่วน
- ขั้นแรก เลือกเวิร์กชีตจากแถบชีต
- ถัดไป คลิกขวา บนแผ่นงาน
- คลิก บน ดูโค้ด .
ขั้นตอนที่ 2:พิมพ์และเรียกใช้รหัส VBA
- A โมดูล VBA หน้าต่างเปิดขึ้นที่นี่ เราสามารถเปิดได้โดยใช้แป้นพิมพ์ลัด ‘ Alt + F11 ’.
- ตอนนี้พิมพ์โค้ดด้านล่าง:
Sub SplitSheet()
Dim Rng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xSheet As Worksheet
On Error Resume Next
xTitleId = "ExcelSplit"
Set Rng = Application.Selection
Set Rng = Application.InputBox("Range", xTitleId, Rng.Address, Type:=8)
SplitRow = Application.InputBox("Row Number Split", xTitleId, 5, Type:=1)
Set xSheet = Rng.Parent
Set xRow = Rng.Rows(1)
Application.ScreenUpdating = False
For i = 1 To Rng.Rows.Count Step SplitRow
resizeCount = SplitRow
If (Rng.Rows.Count - xRow.Row + 1) < SplitRow Then resizeCount = Rng.Rows.Count - xRow.Row + 1
xRow.Resize(resizeCount).Copy
Application.Worksheets.Add after:=Application.Worksheets(Application.Worksheets.Count)
Application.ActiveSheet.Range("A1").PasteSpecial
Set xRow = xRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
- จากนั้น คลิก ในการ วิ่ง หรือเรากด F5 . ได้เลย คีย์เพื่อรันโค้ด
ขั้นตอนที่ 3:ตั้งชื่อและเรียกใช้มาโครเพื่อแยกแผ่นงานออกเป็นหลายรายการตามแถว
- การยืนยัน มาโคร หน้าต่างปรากฏขึ้น
- หลังจากนั้น เลือกชื่อแผ่นงานและ คลิก ในการ วิ่ง .
ขั้นตอนที่ 4:เลือกช่วงข้อมูล
- ระบุช่วงของข้อมูลใน ExcelSplit Range กล่องโต้ตอบแล้วเลือก ตกลง .
ขั้นตอนที่ 5:ระบุจำนวนแถวที่จะแสดงในแต่ละแผ่น
- เขียนหมายเลขแถวที่เราต้องการแยกอีกครั้งใน ExcelSplit Row Number Split กล่องโต้ตอบแล้วเลือก ตกลง . ที่นี่เราเขียน '2 ’.
ผลลัพธ์สุดท้ายด้วยแผ่นงาน Excel หลายแผ่นตามแถว
- สุดท้าย เราจะเห็นว่าแผ่นงานหลักถูกแบ่งออกเป็นหลายแผ่น แต่ละแผ่นมีสองแถว
อ่านเพิ่มเติม: วิธีแยกแผ่นงาน Excel ออกเป็นหลายแผ่นตามค่าของคอลัมน์
บทสรุป
โดยใช้โค้ด Microsoft Excel VBA นี้ เราสามารถแบ่งแผ่นงาน Excel ออกเป็นหลายแผ่นตามแถว มีสมุดแบบฝึกหัดเพิ่ม ไปข้างหน้าและให้มันลอง อย่าลังเลที่จะถามอะไรหรือแนะนำวิธีการใหม่ ๆ
การอ่านที่เกี่ยวข้อง
- วิธีการแยกหน้าจอใน Excel (3 วิธี)
- แยกชีตใน Excel (6 วิธีที่มีประสิทธิภาพ)
- วิธีแยกแผ่นงาน Excel ออกเป็นหลายไฟล์ (วิธีด่วน 3 วิธี)
- แยกแผ่นงานออกเป็นสมุดงานแยกกันใน Excel (4 วิธี)
- วิธีแยกสมุดงานเพื่อแยกไฟล์ Excel ด้วยรหัส VBA