วิธีลบวันออกจากวันที่ใน vba (พร้อมตัวอย่าง)
คุณสามารถใช้ฟังก์ชัน DateAdd ใน VBA ที่มีจำนวนลบเพื่อลบจำนวนวันที่ระบุจากวันที่
นี่เป็นวิธีทั่วไปในการใช้ฟังก์ชันนี้ในทางปฏิบัติ:
Sub SubtractDays()
Dim i As Integer
For i = 2 To 10
Range(" B " & i) = DateAdd(" d ", -4, Range(" A " & i))
Next i
End Sub
มาโครนี้จะลบสี่วันออกจากแต่ละวันที่ในช่วง A2:A10 และแสดงวันที่ใหม่ในช่วง B2:B10
โปรดทราบว่าอาร์กิวเมนต์ “d” ในฟังก์ชัน DateAdd ระบุว่าเราต้องการลบ วัน ออกจากวันที่ แทนที่จะเป็นหน่วยเวลาอื่น
โปรดดู หน้าเอกสารประกอบ VBA สำหรับรายการหน่วยทั้งหมดที่คุณสามารถใช้ในฟังก์ชัน DateAdd
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: ลบวันจากวันที่ใน VBA
สมมติว่าเรามีรายการวันที่ต่อไปนี้ใน Excel:
สมมติว่าเราต้องการลบสี่วันออกจากแต่ละวันและแสดงวันที่ใหม่ในคอลัมน์ B
เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:
Sub SubtractDays()
Dim i As Integer
For i = 2 To 10
Range(" B " & i) = DateAdd(" d ", -4, Range(" A " & i))
Next i
End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
โปรดทราบว่าคอลัมน์ B มีวันที่แต่ละวันในคอลัมน์ A โดยลบออกสี่วัน
คุณสามารถเปลี่ยนค่าตัวเลขในฟังก์ชัน DateAdd เพื่อลบจำนวนวันที่แตกต่างกันออกจากแต่ละวันได้
หมายเหตุ : คุณสามารถค้นหาเอกสารฉบับสมบูรณ์ของฟังก์ชัน DateAdd ใน VBA ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:
วิธีเปรียบเทียบวันที่ใน VBA
วิธีแปลงสตริงเป็นวันที่ใน VBA
วิธีคำนวณวันระหว่างวันที่สองวันใน VBA