ชุมชนคนรักภาษาเบสิค - Visual Basic Community

 ลืมรหัสผ่าน
 ลงทะเบียน
ค้นหา
ดู: 394|ตอบกลับ: 4

vb6 ขอตัวอย่างการคำนวณอายุงานครับ แสดงผลเป็นทำงานมาแล้ว วัน/เดือน/ปี ครับ

[คัดลอกลิงก์]

1

กระทู้

4

โพสต์

65

เครดิต

Member

Rank: 2

เครดิต
65

จะรบกวน ใช้vb6 เขียนเพื่อคำนวณอายุงานครับ ขอcodeเพื่อศึกษาด้วยครับ แสดงผลเป็นทำงานมาแล้ว วัน/เดือน/ปี ครับ

213

กระทู้

301

โพสต์

2419

เครดิต

ผู้ดูแลระบบ

Rank: 9Rank: 9Rank: 9

เครดิต
2419
โพสต์ 2019-8-13 18:25:12 | ดูโพสต์ทั้งหมด

ฟังค์ชั่นในการคำนวณหาอายุ หรือความแตกต่างของเวลา สามารถรีเทิร์นค่าเป็นจำนวนปี เดือน วัน ...
  1. ' /-----------------------------------------------------------------------------------
  2. ' / ฟังค์ชั่นที่ใช้คำนวณหาอายุ และคืนค่ากลับแบบ String
  3. ' / เราสามารถคืนค่ากลับ สามารถแยกเป็นปี เดือน วัน 3 ค่าได้
  4. ' / ด้วยเทคนิคง่ายๆ คือ การใช้เครื่องหมาย Colon คั่นเอาไว้ เช่น ปี:เดือน:วัน
  5. ' / โดยทางฝั่งที่เรียกมาหายังฟังค์ชั่น ก็ใช้คำสั่ง Split เพื่อแยกค่าออกจากกัน
  6. Public Function CalcAge(sDate As Date, eDate As Date) As String
  7. ' /-----------------------------------------------------------------------------------
  8. Dim vDays As Integer
  9. Dim vMonths As Integer
  10. Dim vYears As Integer
  11.     ' Parameters:
  12.     '    sDate - ค่าวันเดือนปีเกิด (หรือวันเดือนปีที่ต้องการคำนวณหา)
  13.     '    eDate - คำนวณเทียบกับวันเดือนปีปัจจุบัน (Now())
  14.     ' Results:
  15.     '    vYears - เก็บค่าความแตกต่างของจำนวนปี
  16.     '    vMonths - เก็บค่าความแตกต่างของจำนวนเดือน
  17.     '    vDays - เก็บค่าความแตกต่างของจำนวนวัน
  18.    
  19.     ' หาความแตกต่างของจำนวนเดือน
  20.     vMonths = DateDiff("m", sDate, eDate)
  21.     vDays = DateDiff("d", DateAdd("m", vMonths, sDate), eDate)
  22.     If vDays < 0 Then
  23.         vMonths = vMonths - 1
  24.         vDays = DateDiff("d", DateAdd("m", vMonths, sDate), eDate)
  25.     End If
  26.     vYears = vMonths \ 12 ' หารตัดเศษก็จะได้จำนวนปี
  27.     vMonths = vMonths Mod 12 ' การหารเอาเศษ โดยจะมีค่าระหว่าง 0, 1, 2, ... 11 ไม่มีทางเท่ากับ หรือ มากกว่า 12
  28.     CalcAge = vYears & " ปี " & vMonths & " เดือน " & vDays & " วัน"
  29. End Function
คัดลอกไปที่คลิปบอร์ด

การใช้งานต้องระวังปีในแต่ละเครื่องว่าเป็นปี พ.ศ. หรือ ค.ศ. กรณีเครื่องผมเป็นปี ค.ศ.
MsgBox CalcAge("01/01/2019", Format(Now(), "dd/MM/yyyy"))

สิ่งที่ดีกว่าการให้ คือการให้แบบไม่มีที่สิ้นสุด

1

กระทู้

4

โพสต์

65

เครดิต

Member

Rank: 2

เครดิต
65
 เจ้าของ| โพสต์ 2019-8-13 20:51:41 | ดูโพสต์ทั้งหมด

งมอยู่นานครับ ขอบคุณครับ

1

กระทู้

4

โพสต์

65

เครดิต

Member

Rank: 2

เครดิต
65
 เจ้าของ| โพสต์ 2019-8-13 20:54:23 | ดูโพสต์ทั้งหมด

thongkorn ตอบกลับเมื่อ 2019-8-13 18:25
ฟังค์ชั่นในการคำนวณหาอายุ หรือความแตกต่างของเวลา สา ...

จะติดตามwebนี้ยาวๆๆๆๆๆๆๆๆๆๆๆๆๆๆเลยครับ แต่คงมีข้อสงสัยเยอะคงต้องรบกวนอีกหลายรอบครับ

5

กระทู้

18

โพสต์

117

เครดิต

Member

Rank: 2

เครดิต
117
โพสต์ 2019-8-21 12:15:27 | ดูโพสต์ทั้งหมด

ขอบคุณมาก อ. SAVE เก็บไว้เผื่อใช้ครับ
ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | ลงทะเบียน

รายละเอียดเครดิต

ข้อความล้วน|อุปกรณ์พกพา|ประวัติการแบน|G2GNet.com  

GMT+7, 2020-1-27 12:58 , Processed in 0.502576 second(s), 4 queries , File On.

Powered by Discuz! X3.3 R20170401, Rev.54

© 2001-2017 Comsenz Inc.

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้