Vba: วิธีแทรกบรรทัดด้วยการจัดรูปแบบ


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

 Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

มาโครนี้จะแทรกแถวใต้เซลล์ที่เลือกในปัจจุบันโดยมีการจัดรูปแบบเหมือนกับเซลล์ในแถวที่เลือกในปัจจุบัน

หมายเหตุ : บรรทัด Application.CutCopyMode = False ระบุว่าควรปิดใช้งานโหมดการตัดและคัดลอกหลังจากดำเนินการแมโคร

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

ที่เกี่ยวข้อง: วิธีแทรกหลายแถวโดยใช้ VBA

ตัวอย่าง: แทรกบรรทัดที่มีการจัดรูปแบบใน VBA

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

สมมติว่าเราต้องการแทรกแถวด้านล่างแถว 2 โดยมีการจัดรูปแบบเหมือนกันทุกประการ

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

 Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

จากนั้นเราสามารถเลือกเซลล์ A2 แล้วเรียกใช้แมโครนี้

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

โปรดสังเกตว่าแถวใหม่ที่เราแทรกมีรูปแบบเดียวกันกับเซลล์ในแถวที่ 2 ทุกประการ รวมถึงสีของเซลล์และเส้นขอบด้วย

โปรดทราบว่าแถวอื่นๆ ทั้งหมดในชุดข้อมูลที่มีอยู่เพิ่งถูกผลักลง

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

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

VBA: วิธีค้นหาบรรทัดที่ใช้ล่าสุด
VBA: วิธีนับจำนวนแถวในช่วง
VBA: วิธีนับจำนวนคอลัมน์ที่ใช้

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

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