สมมติว่าเรากำลังอยู่ในแฟ้มที่มี Range Name ชื่อ Source และ Target และต้องการสร้างชุดคำสั่งเพื่อทำหน้าที่ส่งค่ารวมทั้ง Format จาก Source ไปยัง Target ให้ใช้ Recorder บันทึกตามขั้นตอนต่อไปนี้
- กดปุ่ม F5 เลือกไปยัง Source
- กดปุ่ม Ctrl+c เพื่อสั่ง Copy
- กดปุ่ม F5 เลือกไปยัง Target
- กดปุ่ม Enter เพื่อ Paste
ชุดคำสั่งที่ได้จากการใช้ Macro Recorder
Sub CopySource2Target()
Application.Goto Reference:="Source"
Selection.Copy
Application.Goto Reference:="Target"
ActiveSheet.Paste
End Sub
แต่ถ้าไม่ต้องการนำ Format ตามไปที่ Target ด้วย ให้เปลี่ยนการบันทึก Macro ขั้นที่ 4 เป็น การคลิกขวาแล้วเลือก Paste Special > Values จะทำให้เกิดชุดคำสั่งต่างจากเดิมเล็กน้อยเป็น
Sub CopyDataSource2Target()
Application.Goto Reference:="Source"
Selection.Copy
Application.Goto Reference:="Target"
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End Sub
ซึ่งจะพบว่ารหัสในขั้นตอนการ Paste Special ที่ได้จากการบันทึก Macro เป็นรหัสที่ยาวเกินต้องการ ขอให้ตัดเหลือเพียง Selection.PasteSpecial Paste:=xlPasteValues ก็พอ กลายเป็นชุดคำสั่งที่สั้นและอ่านได้ความตามที่ต้องการมากขึ้นเป็น
Sub CopyDataSource2Target()
Application.Goto Reference:="Source"
Selection.Copy
Application.Goto Reference:="Target"
Selection.PasteSpecial Paste:=xlPasteValues
End Sub