snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
busaba rienthong
Member
Posts: 66 Joined: Sun Feb 07, 2016 3:50 pm
Excel Ver: 365
#1
Post
by busaba rienthong » Fri Mar 25, 2016 10:53 am
อาจารย์คะ
มีปัญหาเรื่อง Expiry ค่ะ
style expiry ที่ต้องการ คือ +3ปี ,-1เดือน ,วันกำหนดเป็น 00
เช่น lot ผลิต 160329 --> expiry = 160200
แต่ เมื่อใช้สูตรตามด้านล่างมันจะโชว์ เป็น 190300 ซึ่งมันผิด
อยากทราบว่าสูตรผิดตรงไหน มีผลจากเดือนกุมภาพันธ์ ปีนี้มี 29 วันหรือไม่ และเราจะแก้สูตรอย่างไรคะ
IF(AG60=0,"",TEXT(DATE(YEAR(AR5)+3,MONTH(AR5)-1,DAY(AR5)),"YYMM")&"00")
XDoll
Bronze
Posts: 261 Joined: Sun Mar 03, 2013 9:23 pm
#2
Post
by XDoll » Fri Mar 25, 2016 11:21 am
หากไม่สนใจวัน ให้เปลี่ยน เป็น =IF(AG60=0,"",TEXT(DATE(YEAR(AR5)+3,MONTH(AR5)-1,DAY(AR5)-DAY(AR5)+1),"YYMM")&"00")
busaba rienthong
Member
Posts: 66 Joined: Sun Feb 07, 2016 3:50 pm
Excel Ver: 365
#3
Post
by busaba rienthong » Fri Mar 25, 2016 11:56 am
ลองแล้วค่ะ ตามสูตรใหม่ แต่จะมีปัญหาช่วงที่เป็น lot เดือน 1
เช่น lot ผลิต 170129 ปกติ lot จะเป็น 181229
แต่ ถ้าตามสูตร จะเป็๋น 191200 ซึ่งมันผิด
XDoll
Bronze
Posts: 261 Joined: Sun Mar 03, 2013 9:23 pm
#5
Post
by XDoll » Fri Mar 25, 2016 1:12 pm
busaba rienthong wrote: เขียนผิดค่ะ
เช่น lot ผลิต 170129 ปกติ expiry จะเป็น 181229
ตอนแรกผมเข้าใจว่า +3ปี - 1เดือน ก็คือ 2 ปี 11 เดือน
แต่ดูจาก ที่บอก
ผลิต 170129 expiry 181229 ซึ่งหักลบแล้ว 699 วัน(1 ปี 11 เดือน) ซึ่งไม่ถึง 2 ปีด้วยซ้ำ กำลังงวิธีคิดครับ เดือนอื่นมีปัญหาแบบนี้หรือเปล่าครับ
busaba rienthong
Member
Posts: 66 Joined: Sun Feb 07, 2016 3:50 pm
Excel Ver: 365
#6
Post
by busaba rienthong » Fri Mar 25, 2016 2:11 pm
ขอโทษค่ะ เขียนผิด
ผลิต 170129 expiry 191229
+3ปี - 1เดือน ก็คือ 2 ปี 11 เดือน เข้าใจถูกแล้วค่ะ
ปกติถ้าไม่ได้เป็น lot ผลิตที่อยู่เดือน 1 ก็ไม่มีปัญหาค่ะ
เช่น ผลิต 170529 expiry 200429 อันนี้จะไม่มีปัญหาอะไรค่ะ
XDoll
Bronze
Posts: 261 Joined: Sun Mar 03, 2013 9:23 pm
#7
Post
by XDoll » Fri Mar 25, 2016 2:54 pm
ไม่ทราบสูตรที่ให้ไปติดตรงไหนครับ หากให้กำหนดวันเป็น 00
busaba rienthong wrote:
style expiry ที่ต้องการ คือ +3ปี ,-1เดือน ,วันกำหนดเป็น 00
=IF(AG60=0,"",TEXT(DATE(YEAR(AR5)+3,MONTH(AR5)-1,DAY(AR5)-DAY(AR5)+1),"YYMM")&"00") ผมตรวจสอบสูตรแล้ว ซึ่งการแสดงผล
ผลิต 170129 expiry ก็ควรจะเป็น 191200
หากผมเข้าใจผิดอะไรไปแจ้งให้ทราบด้วยนะครับ