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