:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

สอบถามเรื่องการใช้ IF 2 เงื่อนไข

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#1

Post by hednoi19 »

สอบถามเรื่องการใช้ IF 2 เงื่อนไข

**สิ่งที่ต้องการ ในช่อง Production plan (-3 วัน) จากวันที่ในช่อง plan (PD) แต่ถ้าหากไม่มีข้อมูลในช่อง PD ให้ดึงข้อมูลจากช่อง PM มาแทน (โดยเงื่อนไข -3 วัน) เช่นกันครับ

ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
apinyathamma
Member
Member
Posts: 1
Joined: Wed Nov 23, 2016 1:14 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#2

Post by apinyathamma »

อยากทราบสูตร พนักงานที่ได้เบี้ยขยัน สามารถใช้ If ได้หรือไม่ แล้วจะทำอย่างไร รบกวนหน่อยนะคะ ใครทราบบ้าง
User avatar
parakorn
Gold
Gold
Posts: 1223
Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#3

Post by parakorn »

hednoi19 wrote:สอบถามเรื่องการใช้ IF 2 เงื่อนไข

**สิ่งที่ต้องการ ในช่อง Production plan (-3 วัน) จากวันที่ในช่อง plan (PD) แต่ถ้าหากไม่มีข้อมูลในช่อง PD ให้ดึงข้อมูลจากช่อง PM มาแทน (โดยเงื่อนไข -3 วัน) เช่นกันครับ

ขอบคุณครับ
A2 พิมพ์ =IF(C2="",B2-3,C2-3) Copy ลากลงครับ
User avatar
parakorn
Gold
Gold
Posts: 1223
Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#4

Post by parakorn »

apinyathamma wrote:อยากทราบสูตร พนักงานที่ได้เบี้ยขยัน สามารถใช้ If ได้หรือไม่ แล้วจะทำอย่างไร รบกวนหน่อยนะคะ ใครทราบบ้าง
ติดปัญหาหรือสงสัย ให้ตั้งกระทู้สอบถามให้ชัดเจนครับ ปัญหา
สามารถใช้สูตรแก้ไขได้ ขึ้นอยู่กับผู้ใช้ครับ ว่าจะใช้สูตรอะไร
ไม่มีอะไรตายตัวครับ :D
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#5

Post by hednoi19 »

parakorn wrote:
hednoi19 wrote:สอบถามเรื่องการใช้ IF 2 เงื่อนไข

**สิ่งที่ต้องการ ในช่อง Production plan (-3 วัน) จากวันที่ในช่อง plan (PD) แต่ถ้าหากไม่มีข้อมูลในช่อง PD ให้ดึงข้อมูลจากช่อง PM มาแทน (โดยเงื่อนไข -3 วัน) เช่นกันครับ

ขอบคุณครับ
A2 พิมพ์ =IF(C2="",B2-3,C2-3) Copy ลากลงครับ

ขอบคุณมากครับ แล้วถ้าเพิ่มเติมอีกหนึ่งเงื่อนไน ถ้าในกรณีตรงกับวันอาทิตย์ให้เลื่อนเป็นอีกวัน สามารถทำได้ไหมครับ.. ?
User avatar
parakorn
Gold
Gold
Posts: 1223
Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#6

Post by parakorn »

hednoi19 wrote:
parakorn wrote:
hednoi19 wrote:สอบถามเรื่องการใช้ IF 2 เงื่อนไข

**สิ่งที่ต้องการ ในช่อง Production plan (-3 วัน) จากวันที่ในช่อง plan (PD) แต่ถ้าหากไม่มีข้อมูลในช่อง PD ให้ดึงข้อมูลจากช่อง PM มาแทน (โดยเงื่อนไข -3 วัน) เช่นกันครับ

ขอบคุณครับ
A2 พิมพ์ =IF(C2="",B2-3,C2-3) Copy ลากลงครับ

ขอบคุณมากครับ แล้วถ้าเพิ่มเติมอีกหนึ่งเงื่อนไน ถ้าในกรณีตรงกับวันอาทิตย์ให้เลื่อนเป็นอีกวัน สามารถทำได้ไหมครับ.. ?
ยกตัวอย่างคำตอบที่ต้องการมาหน่อยครับ :D
User avatar
Serverchita
Bronze
Bronze
Posts: 292
Joined: Wed Nov 18, 2015 1:28 pm
Excel Ver: 2016

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#7

Post by Serverchita »

สูตรที่ A2 ครับ

=IF(C2="",IF(WEEKDAY(B2)=1,B2-4,B2-3),IF(WEEKDAY(C2)=1,C2-4,C2-3))
:D :thup: :cp: :flw: :rz: :sg: :tt: :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :ard: :arl: :aru: :| :mrgreen: :geek: :ugeek:
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#8

Post by hednoi19 »

Serverchita wrote:สูตรที่ A2 ครับ

=IF(C2="",IF(WEEKDAY(B2)=1,B2-4,B2-3),IF(WEEKDAY(C2)=1,C2-4,C2-3))
ขอยคุณพี่มากครับ ได้ตามที่ต้องการเลย
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#9

Post by hednoi19 »

Serverchita wrote:สูตรที่ A2 ครับ

=IF(C2="",IF(WEEKDAY(B2)=1,B2-4,B2-3),IF(WEEKDAY(C2)=1,C2-4,C2-3))
พี่ครับเพิ่มเติม** ถ้านับเฉพาะวันอาทิตย์เป็นวันหยุด แก้ไขสูตรแบบไหนครับ ทำงานจันทร์ - เสาร์ครับ
User avatar
Serverchita
Bronze
Bronze
Posts: 292
Joined: Wed Nov 18, 2015 1:28 pm
Excel Ver: 2016

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#10

Post by Serverchita »

hednoi19 wrote:
Serverchita wrote:สูตรที่ A2 ครับ

=IF(C2="",IF(WEEKDAY(B2)=1,B2-4,B2-3),IF(WEEKDAY(C2)=1,C2-4,C2-3))
พี่ครับเพิ่มเติม** ถ้านับเฉพาะวันอาทิตย์เป็นวันหยุด แก้ไขสูตรแบบไหนครับ ทำงานจันทร์ - เสาร์ครับ
ไม่เข้าใจคำถามครับ อธิบายแบบละเอียดด้วยครับ เผื่อท่านอื่นมาตอบให้ครับ
:D :thup: :cp: :flw: :rz: :sg: :tt: :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :ard: :arl: :aru: :| :mrgreen: :geek: :ugeek:
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#11

Post by hednoi19 »

Serverchita wrote:
hednoi19 wrote:
Serverchita wrote:สูตรที่ A2 ครับ

=IF(C2="",IF(WEEKDAY(B2)=1,B2-4,B2-3),IF(WEEKDAY(C2)=1,C2-4,C2-3))
พี่ครับเพิ่มเติม** ถ้านับเฉพาะวันอาทิตย์เป็นวันหยุด แก้ไขสูตรแบบไหนครับ ทำงานจันทร์ - เสาร์ครับ
ไม่เข้าใจคำถามครับ อธิบายแบบละเอียดด้วยครับ เผื่อท่านอื่นมาตอบให้ครับ
ขออนุญาตแก้ไขคำถามครับ จากเดิมนับวันหยุดแค่วันอาทิตย์ **เพิ่มเติมคือไม่นับวันเสาร์-วันอาทิตย์ครับ จะแก้ไขสูตรได้อย่างไรบ้างครับ
ตัวอย่างเช่น วันจันทร์ที่ 21/11/59 ไม่รวม เสาร์-อาทิตย์ (-4 วัน) เท่ากับวันพุธที่ 16/11/59 ประมาณนี้ครับพี่
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#12

Post by DhitiBank »

ลองแบบนี้ครับ

A2
=IF(B2="","",IF(C2="",B2-SUMPRODUCT((WEEKDAY(ROW(INDIRECT((B2-3)&":"&B2)))=1)+(WEEKDAY(ROW(INDIRECT((B2-3)&":"&B2)))=7)),C2-SUMPRODUCT((WEEKDAY(ROW(INDIRECT((C2-3)&":"&C2)))=1)+(WEEKDAY(ROW(INDIRECT((C2-3)&":"&C2)))=7)))-3)
Enter >> คัดลอกลงล่างครับ
User avatar
parakorn
Gold
Gold
Posts: 1223
Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#13

Post by parakorn »

ลองแบบนี้ดูครับ
A2 พิมพ์
=IF(C2="",IF(WEEKDAY(B2)=7,B2-4,IF(OR(WEEKDAY(B2)=1,WEEKDAY(B2)=2,WEEKDAY(B2)=3,WEEKDAY(B2)=4),B2-5,B2-3)),IF(WEEKDAY(C2)=7,C2-4,IF(OR(WEEKDAY(C2)=1,WEEKDAY(C2)=2,WEEKDAY(C2)=3,WEEKDAY(C2)=4),C2-5,C2-3)))
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#14

Post by hednoi19 »

DhitiBank wrote:ลองแบบนี้ครับ

A2
=IF(B2="","",IF(C2="",B2-SUMPRODUCT((WEEKDAY(ROW(INDIRECT((B2-3)&":"&B2)))=1)+(WEEKDAY(ROW(INDIRECT((B2-3)&":"&B2)))=7)),C2-SUMPRODUCT((WEEKDAY(ROW(INDIRECT((C2-3)&":"&C2)))=1)+(WEEKDAY(ROW(INDIRECT((C2-3)&":"&C2)))=7)))-3)
Enter >> คัดลอกลงล่างครับ
มันขึ้นเป็นวันเสาร์แทนครับ ไม่ทราบว่าต้องแก้ไขตรงไหน วันเสาร์-อาทิตย์ ต้องเป็น 0 ครับ

ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#15

Post by hednoi19 »

parakorn wrote:ลองแบบนี้ดูครับ
A2 พิมพ์
=IF(C2="",IF(WEEKDAY(B2)=7,B2-4,IF(OR(WEEKDAY(B2)=1,WEEKDAY(B2)=2,WEEKDAY(B2)=3,WEEKDAY(B2)=4),B2-5,B2-3)),IF(WEEKDAY(C2)=7,C2-4,IF(OR(WEEKDAY(C2)=1,WEEKDAY(C2)=2,WEEKDAY(C2)=3,WEEKDAY(C2)=4),C2-5,C2-3)))
ได้ตามที่ต้องการเลยครับ ขอบคุณมากครับ
**หากพอมีเวลา ช่วยมาขยายความสูตรนี้ทีครับ**

ขอบคุณมากครับ
User avatar
parakorn
Gold
Gold
Posts: 1223
Joined: Thu Mar 14, 2013 9:41 am
Location: Central Chaengwattana[Tops]
Excel Ver: 365
Contact:

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#16

Post by parakorn »

ใช้ If แบ่งออกเป็น 2เงื่อนไขใหญ่ๆ ดังนี้ครับ
ถ้า C2 เป็นช่องว่าง > กรณีเป็นจริงให้ดึงข้อมูลกลุ่มแรก > กรณีเป็นเท็จให้ดึงข้อมูลกลุ่มหลัง
กลุ่มแรกคือ
IF(WEEKDAY(B2)=7,B2-4,IF(OR(WEEKDAY(B2)=1,WEEKDAY(B2)=2,WEEKDAY(B2)=3,WEEKDAY(B2)=4),B2-5,B2-3))
แปลได้ดังนี้ครับ
ถ้า WEEKDAY(B2) = วันเสาร์ ให้แสดงวันที่ จาก B2 แล้วย้อนไป 4 วัน
ถ้า WEEKDAY(B2) = วันอาทิตย์ , วันจันทร์ , วันอังคาร หรือวันพุธ ให้แสดงวันที่ จาก B2 แล้วย้อนไป 5 วัน
ที่เหลือ ให้แสดงวันที่ จาก B2 แล้วย้อนไป 3 วัน
กลุ่มที่สอง ก็เช่นเดียวกันครับ แต่เปลี่ยนจาก B2 เป็น C2
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#17

Post by DhitiBank »

hednoi19 wrote: มันขึ้นเป็นวันเสาร์แทนครับ ไม่ทราบว่าต้องแก้ไขตรงไหน วันเสาร์-อาทิตย์ ต้องเป็น 0 ครับ

ขอบคุณครับ
ขออภัยครับ ผมเข้าใจผิด

=IF(B2="","",IF(C2="",B2,C2)-LOOKUP(WEEKDAY(IF(C2="",B2,C2)),{1,5,7},{5,3,4}))
hednoi19
Member
Member
Posts: 25
Joined: Sat Sep 24, 2016 3:58 pm

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#18

Post by hednoi19 »

DhitiBank wrote:
hednoi19 wrote: มันขึ้นเป็นวันเสาร์แทนครับ ไม่ทราบว่าต้องแก้ไขตรงไหน วันเสาร์-อาทิตย์ ต้องเป็น 0 ครับ

ขอบคุณครับ
ขออภัยครับ ผมเข้าใจผิด

=IF(B2="","",IF(C2="",B2,C2)-LOOKUP(WEEKDAY(IF(C2="",B2,C2)),{1,5,7},{5,3,4}))

ได้คำตอบตามที่ต้องการเลยครับ **หากมีแก้ไขทำนับวันเสาร์ด้วยต้องแก้ไขอย่างไรครับ มองดูยังไม่ค่อยเข้าใจสูตรครับ

ขอบคุณพี่มากครับ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: สอบถามเรื่องการใช้ IF 2 เงื่อนไข

#19

Post by DhitiBank »

hednoi19 wrote:หากมีแก้ไขทำนับวันเสาร์ด้วยต้องแก้ไขอย่างไรครับ มองดูยังไม่ค่อยเข้าใจสูตรครับ
LOOKUP([b]WEEKDAY(IF(C2="",B2,C2))[/b],[color=#FF0000]{1,5,7}[/color],[color=#0000FF]{5,3,4}[/color])

แก้ไขในชุดข้อมูลที่ระบายสีแดงกับน้ำเงินก็ได้ครับ
สีแดงคือ วันในสัปดาห์ โดยเลข 1 คือวันอาทิตย์ ไล่ไปจนถึงเลข 7 คือวันเสาร์
สีน้ำเงิน คือ วันที่ต้องการให้หักครับ จะกี่วันก็ใส่ตามที่ต้องการ โดยใส่ให้ลำดับสอดคล้องกับข้อมูลสีแดง

ถ้าให้เข้าใจง่ายๆ ก็ใส่ทั้ง 7 วันเลยก็ได้ครับ เช่น
[color=#FF0000]{1,2,3,4,5,6,7}[/color],[color=#0000FF]{11,12,13,14,15,16,17}[/color]
จากข้างบนนี้ก็หมายความว่า หากพบว่าเป็นวันอาทิตย์ ก็ให้ลบด้วย 11 หากเป็นวันเสาร์ก็ให้ลบด้วย 17 เป็นต้นครับ
Post Reply