Page 1 of 1

คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Sun Jan 23, 2011 1:02 am
by saki2515
เรียนทุกๆท่าน
อยากทราบวิธีการแยก วัน เดือน ปี เกิด จากการกรอกข้อมูลที่ได้รับมา ทดลองใช้ left แล้วไม่เป็นผล หรืออยากได้สูตรที่ สามารถ mid เอาข้อมูลที่อยู่หน้าเครื่องหมาย / มาก็พอคำนวณต่อได้ โดยเฉพาะคำนวณอายุแบบปี แต่เดือน และ วันคงต้องอด...ต้องคีย์แยกเป็นส่วนๆ แล้วนำแต่ละเซลมารวมกัน
ช้ามากทีเดียว และไม่อยากกรอกข้อมูลแบบคีย์แบบ คศ. เพราะต้องคิดนานทีเดียวกว่าจะกรอกได้แต่ละคน
ตามไฟล์แนบครับ
ขอบคุณครับ

Re: คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Sun Jan 23, 2011 8:06 am
by snasui
:D ลองตามนี้ครับ

1. H1 คีย์สูตรเพื่อหาวันปัจจุบัน

=Today()

2. B2 คีย์สูตรเพื่อหาวันที่

=Day(A2)

3. C2 คีย์สูตรเพื่อหาเดือน

=Month(A2)

4. D2 คีย์สูตรเพื่อหาปี

=Year(A2)

5. E2 คีย์สูตรเพื่อหาผลต่างเป็นจำนวนปีระหว่างวันปัจจุบันกับวันที่ใน B2:D2 แต่ต้องทำให้เป็นปีค.ศ. ก่อน

=Datedif(Date($D2-543,$C2,$B2),$H$1,"Y")

6. F2 คีย์สูตรเพื่อหาผลต่างเป็นจำนวนเดือนระหว่างวันปัจจุบันกับวันที่ใน B2:D2 แต่ต้องทำให้เป็นปีค.ศ. ก่อน

=Datedif(Date($D2-543,$C2,$B2),$H$1,"Ym")

7. G2 คีย์สูตรเพื่อหาผลต่างเป็นจำนวนวันระหว่างวันปัจจุบันกับวันที่ใน B2:D2 แต่ต้องทำให้เป็นปีค.ศ. ก่อน

=Datedif(Date($D2-543,$C2,$B2),$H$1,"Md")

Re: คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Sun Jan 23, 2011 8:30 am
by saki2515
ขอบคุณครับ ผมต้องศึกษา date กับ DateDif เพิ่มเป็นพิเศษ

Re: คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Mon Jan 24, 2011 10:03 am
by kmb
ฟังก์ชั่น datedif ใน excel ไม่มี list อยู่นี่ครับ help ก็ไม่มี ทำอย่างไรถึงจะหาเจอฟังก์ชั่นเหล่านี้ล่ะครับ และไม่ทราบว่ามีฟังก์ชั่นคล้าย ๆ กันแบบนี้อีกไหมครับ :?:

Re: คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Mon Jan 24, 2011 12:54 pm
by joo
ขอร่วมแบ่งปันความรู้ครับ :D
รูปแบบการใช้ DATEDIF
DATEDIF(start_date, end_date, unit)
start_dateThe date that represents the starting date of the period. 
end_dateThe date that represents the finishing date of the period
unitThe type of information you want returned
"D" = number of days between the "start_date" and "end_date"
"M" = number of complete months between the "start_date" and "end_date"
"Y" = number of complete years between the "start_date" and "end_date"
"MD" = difference between days in "start_date" and "end_date"
"YD" = difference between the days of "start_date" and "end_date"
"YM" = difference between the months in "start_date" and "end_date"
=DATEDIF("01/07/2010","01/08/2010","m") ค่าที่ได้คือ1
=DATEDIF("01/07/2009","01/08/2010","m") ค่าทีึ่ได้คือ13
=DATEDIF(D1,TODAY(),"y")&" years "&DATEDIF(D1,TODAY(),"ym")&" months "&DATEDIF(D1,TODAY(),"md")&" days" ค่าที่ได้คือ2 years 2 months 20 days
หรือศึกษาจากเวปของอาจารย์ที่นี้ครับ http://snasui.blogspot.com

Re: คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Mon Jan 24, 2011 2:37 pm
by snasui
kmb wrote:ฟังก์ชั่น datedif ใน excel ไม่มี list อยู่นี่ครับ help ก็ไม่มี ทำอย่างไรถึงจะหาเจอฟังก์ชั่นเหล่านี้ล่ะครับ และไม่ทราบว่ามีฟังก์ชั่นคล้าย ๆ กันแบบนี้อีกไหมครับ :?:
:D Datedif ถูกนำออกจาก Help ไปแล้วตั้งแต่รุ่น Excel ที่มากกว่า 2000 ขึ้นไปครับ (รุ่น 2000 คือรุ่นสุดท้ายที่มี Help ของ Datedif ถ้าจำไม่ผิดนะครับ) ทั้งนี้เนื่องจากการคำนวณจะมีความคลาดเคลื่อนบ้างและไม่สามารถปรับให้แม่นยำได้ 100% ตอนนี้เห็นมีแต่ Help ของ SharePoint ที่ยังมีให้อ่านอยู่ครับที่ http://office.microsoft.com/th-th/share ... 60981.aspx สำหรับฟังก์ชั่นอื่นที่มีแล้วถูกถอดออกเท่าที่ผมคุ้นเคยเห็นจะมีแต่ Datedif นี่แหละครับ :mrgreen:

Re: คำนวนวันเดือนปีเกิดจากการกรอกข้อมูลแบบไทยเช่น 11/10/2505

Posted: Mon Jan 24, 2011 5:35 pm
by kmb
ขอบคุณมากครับ :D