17
ห้อง MS Access / : สอบถามการสร้าง Expression เพื่อนับอายุงานครับ
« เมื่อ: 12 พ.ย. 62 , 15:18:26 »
เราก็สามารถสร้างเงื่อนไขต่อไปได้ครับว่า ถ้าฟิลด์ TerminateDate มีค่าก็ให้เทียบค่าวันที่ฟิลด์นี้ แต่ถ้าไม่มีค่าก็เทียบค่าวัน ที่วันที่ปัจจุบัน
คำนวณวัน
CompanyHiringDate_Day:
IIf(isnull([TerminateDate]),
IIf(DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],Date()),[CompanyHiringDate]),Date())<0,DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],Date())-1,[CompanyHiringDate]),Date()),DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],Date()),[CompanyHiringDate]),Date())),
IIf(DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],[TerminateDate]),[CompanyHiringDate]),[TerminateDate])<0,DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],[TerminateDate])-1,[CompanyHiringDate]),[TerminateDate]),DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],[TerminateDate]),[CompanyHiringDate]),[TerminateDate])))
ทำในส่วนของ เดือน และ ปี ด้วย ประมาณนี้ครับ
คำนวณวัน
CompanyHiringDate_Day:
IIf(isnull([TerminateDate]),
IIf(DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],Date()),[CompanyHiringDate]),Date())<0,DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],Date())-1,[CompanyHiringDate]),Date()),DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],Date()),[CompanyHiringDate]),Date())),
IIf(DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],[TerminateDate]),[CompanyHiringDate]),[TerminateDate])<0,DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],[TerminateDate])-1,[CompanyHiringDate]),[TerminateDate]),DateDiff("d",DateAdd("m",DateDiff("m",[CompanyHiringDate],[TerminateDate]),[CompanyHiringDate]),[TerminateDate])))
ทำในส่วนของ เดือน และ ปี ด้วย ประมาณนี้ครับ