รบกวนหน่อยค่ะ ถ้าเราจะนำวันที่ มาลบกับ แต่ไม่นับวันหยุดได้ไหมค่ะ



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

08 ก.ค. 64 , 15:17:25
อ่าน 218 ครั้ง

MiKu

อย่างเช่น
วันที่ 8/7/64 เป็นวันพฤหัส - วันที่ 12/7/64 เป็นวันจันทร์ ถ้าลบกับกัน จะได้ 4 วัน ถ้าไม่รวมวันหยุดก็จะได้ 2 วันทำการค่ะ อยากได้แบบไม่นับวันหยุดได้ไหมค่ะ

 

08 ก.ค. 64 , 16:46:46
ตอบกลับ #1

PNR

1.สร้าง Module ใส่โค้ดนี้เข้าไป

โค๊ด: [Select]
Public Function WorkingDays(StartDate As Date, EndDate As Date) As Integer
On Error GoTo Err_WorkingDays
Dim intCount As Integer
               intCount = 0
               If Weekday(StartDate) = 1 Then
                     intCount = intCount + 1
               End If
               Do While StartDate <= EndDate
                    Select Case Weekday(StartDate)
                    Case Is = 1, 7
                        intCount = intCount
                    Case Is = 2, 3, 4, 5, 6
                        intCount = intCount + 1
                    End Select
                    StartDate = StartDate + 1
                    If Weekday(EndDate) = 1 Then
                        If EndDate > StartDate Then
                            intCount = intCount + 1
                         End If
                    End If
               Loop
               WorkingDays = intCount
Exit_WorkingDays:
    Exit Function
Err_WorkingDays:
    MsgBox Err.Description
    Resume Exit_WorkingDays
End Function

2.สมมุติ textbox ชื่อ txtStartDate   วันที่เริ่ม
                           txtEndDate     วันที่สิ้นสุด
                           txtTotalDate    คำนวนวันที่ได้(ไม่รวมวันหยุด)
ไม้รู้แบบนี้หรือเปล่าลองดูครับ
ผมค้นกระทู้เก่าเจอจากกระทู้นี้
https://www.thai-access.com/topic_post.asp?CategoryID=1&TopicID=1702&PagePosition=1

Time to stop for me  :dizzy:
 

09 ก.ค. 64 , 09:31:10
ตอบกลับ #2

MiKu

ตรงตามที่ต้องการเรยค่ะ ขอบคุณมากเรยค่ะ

 


บอร์ดเรียนรู้ Access สำหรับคนไทย