excel เลื่อนบรรทัดลงตามจำนวนข้อมูลที่ Spill

Sub MoveMergedCells()
Dim ws As Worksheet
Dim spillRange As Range
Dim lastRow As Long
Dim mergedRange As Range
Dim A as long

Set ws = ThisWorkbook.Sheets("Sheet1") ' เปลี่ยนชื่อชีทตามต้องการ
Set spillRange = ws.Range("A1").CurrentRegion ' เปลี่ยนเซลล์เริ่มต้นตามต้องการ

' หาจำนวนแถวของข้อมูลในอาร์เรย์
lastRow = spillRange.Rows.Count

' กำหนดช่วงเซลล์ที่มีการ merge
Set mergedRange = ws.Range("A" & lastRow + 1 & ":B" & lastRow + 1) ' เปลี่ยนช่วงเซลล์ตามต้องการ

' ย้ายเซลล์ที่มีการ merge ลง
for a = 1 to lastrow
mergedRange.Cut Destination:=ws.Range("A" & lastRow + 2 & ":B" & lastRow + 2)
next

End Sub

alt+F11 เพื่อสร้าง module

alt+F8 เพื่อรัน

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *