: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
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาทีหลั

ฟอรัมถาม-ตอบปัญหาการใช้งาน 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
sdmania
Bronze
Bronze
Posts: 320
Joined: Tue Sep 07, 2010 11:38 am
Location: นครสวรรค์

ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาทีหลั

#1

Post by sdmania »

ในไฟล์ตัวอย่างที่แนบมานะครับ ตอนนี้เป็นโครงสร้างคร่าวๆอยู่ครับ เพราะเงื่อนไขการชำระยังมีอีกแต่ผมกำลังหาวิธีเขียนคำสั่งค่าปรับอยู่ครับ
รหัสลูกค้ามี4คนดังนี้ครับ
22-001-2
22-002-2
22-003-2
22-004-2

ในsheet form01--แบบฟอร์มเอาไว้คีย์รหัสลูกค้าแล้วขึ้นข้อมูลค่าปรับ มีการค้าง
ในsheet payment_date---เอาไว้ใส่กำหนดวันชำระของลูกค้า
ในsheet get_money--- เอาไว้ใส่จำนวนเงินที่ลูกค้าส่งมา (มีกรณีลูกค้าส่งผ่านธนาณัติมาแต่ไม่เต็มงวด ทางผมจะยังไม่นำมาหักค่างวดจึงมีค่าเท่ากับค้างจ่าย แต่เค้า(บริษัท)ให้เรียกว่า จ่ายไม่เต็มงวด)
ในsheet check_payment ---เป็นส่วนเอาไว้เช็คเงื่อนไขว่า เลยกำหนดไหม เลยแล้วมีการจ่ายไหม การจ่ายเต็มงวดหรือไม่

ทีนี้ผมสงสัยว่า ถ้าเช็คได้ว่ามีการค้างตั้งแต่2งวดขึ้นไป จะรู้ได้ไงว่างวดไหน วันที่เก่าสุดครับ เพราะอัตราค่าปรับไม่เท่ากัน
ยกตัวอย่าง ค้างค่างวด มค จะมีอัตราค่าปรับ "ค่างวด*1.5%"
แต่ถ้าค้างค่างวด 2งวด เดือน มค จะใช้อัตราค่าปรับ "(ค่างวดเดือนแรก*3%)+(ค่างวดเดือนล่าสุด*1.5%)"
น่ะครับ
You do not have the required permissions to view the files attached to this post.
User avatar
sdmania
Bronze
Bronze
Posts: 320
Joined: Tue Sep 07, 2010 11:38 am
Location: นครสวรรค์

Re: ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาท

#2

Post by sdmania »

sdmania wrote: แต่ถ้าค้างค่างวด 2งวด เดือน มค จะใช้อัตราค่าปรับ "(ค่างวดเดือนแรก*3%)+(ค่างวดเดือนล่าสุด*1.5%)"
น่ะครับ
ขอแก้ไขครับ ผมอธิบายผิดครับ ถ้าค้าง1งวด เอาค่างวด*1.5%=ค่าปรับ
ถ้าค้าง 2 งวด เอาเดือนที่เก่าสุด เช่น ค้าง ม.ค. กับ ก.พ. ก็ให้เอา ม.ค.*3% ก.พ.*1.5% รวมกันเป็นค่าปรับ2เดือน

ถ้าค้าง 3 งวด เอาเดือนที่ค้างลำดับหนึ่ง คูณ 4.5%+เดือนที่ค้างที่ลำดับสองคูณ3%+เดือนที่ค้างลำดับสามคูณ1.5%

สรุปแล้ว ค่าปรับ มันจะต้องเพิ่มไปงวดละ 1.5%ครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31175
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาท

#3

Post by snasui »

:D ควรปรับข้อมูลให้เป็น Database ครับ เพื่อให้ง่ายต่อการหาผลลัพธ์ ผมทำตัวอย่างมาให้แล้วตามชีทที่ระบายสีไว้ให้ ลองดูในไฟล์แนบครับ
You do not have the required permissions to view the files attached to this post.
User avatar
sdmania
Bronze
Bronze
Posts: 320
Joined: Tue Sep 07, 2010 11:38 am
Location: นครสวรรค์

Re: ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาท

#4

Post by sdmania »

:mrgreen: ขอบคุณครับอาจารย์

ผมมีคำถามครับ กรณีลูกค้า60งวด มีประมาณ200คน กลุ่มอื่นๆผมกะคร่าวๆว่ากลุ่มระหว่างตั้งแต่12งวดขึ้นมาแต่ไม่เกิน36 น่าจะ300กว่าคน ยอดลูกค้าตอนนี้น่าจะ800ครับ แถวของexcel จะรองรับข้อมูลหมดไหมครับ

เดี๋ยววันนี้ผมกำลังหาข้อสรุปต่อการปรับ และเงื่อนไขต่างๆที่เกิดจากบุคคลเอาไว้มาถามครับ ตอนนี้ปวดหัวมากเลยแหะๆๆ
ยกตัวอย่างเช่น เกณฑ์การปรับ ถ้าค้าง2งวด ต้องรอค่าปรับค่างวดทั้งหมดทีเดียว แต่มีลูกค้าบางคนขอผ่อนผันส่งค่าปรับทั้งหมดแต่ค่างวดส่งมางวดเดียว ก็ได้ครับ :o

**เพิ่งทราบเมื่อวานว่า เมื่อค่าปรับค้าง3งวด จะมีการออก จ.ม.ซึ่งค่าจดหมายจะถือเป็นค่าติดตามลูกค้าต้องเสียประมาณ200 จ.ม.นี้ขึ้นอยู่กับดุลยพินิจของพนักงานติดตาม การตั้งเงื่อนไขให้excel จะพอยืดหยุ่นไหวไหมครับเพราะดูแล้ว
ค่อนข้างอิงความยืดหยุ่นของบุคคลมากกว่าหลักเกณฑ์ :mrgreen:
User avatar
sdmania
Bronze
Bronze
Posts: 320
Joined: Tue Sep 07, 2010 11:38 am
Location: นครสวรรค์

Re: ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาท

#5

Post by sdmania »

:shock: ไฟล์ที่แนบมาได้มาจากบอร์ดนี้ครับ แต่ขออภัยจริงๆผมจำกระทู้ไม่ได้ ผมเห็นว่าน่าจะนำมาประยุกต์ได้ เลยsaveตัวอย่างเอาไว้ก่อนครับ

ในsheetรายงาน ในคอลัมภ์A ที่อาจารย์ใส่เงื่อนไข
=IF(N($A16),LOOKUP($A16,ข้อมูล!$G:$G,ข้อมูล!C:C),"")
ขออาจารย์ช่วยแปลหน่อยครับ ช่วง N($A16)นี่หมายความว่ายังไงครับแล้ว Nนี่เป็นฟังก์ชั่น เอาไว้ทำอะไรครับ :mrgreen: :mrgreen:
User avatar
snasui
Site Admin
Site Admin
Posts: 31175
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาท

#6

Post by snasui »

:D สำหรับปริมาณข้อมูลนั้น ดูจากปริมาณคร่าว ๆ คิดว่า Excel 2003 พอจะรับไหวครับ และหากเป็น Excel 2007 ขึ้นไปก็สามารถรองรับปริมาณข้อมูลได้อย่างแน่นอนครับ

ส่วนฟังก์ชั่น N() จะเป็นการแปลงค่าที่ต้องการเป็นตัวเลข สามาถดูเพิ่มเติมได้ที่นี่ครับ http://office.microsoft.com/th-th/excel ... P005204211

จากสูตร

=IF(N($A16),LOOKUP($A16,ข้อมูล!$G:$G,ข้อมูล!C:C),"")

หมายความว่า หากผลลัพธ์จาก N($A16) ไม่เป็น 0 แล้วให้แสดงผลลัพธ์จาก LOOKUP($A16,ข้อมูล!$G:$G,ข้อมูล!C:C) แต่หากเป็น 0 ให้แสดงค่าว่าง
User avatar
sdmania
Bronze
Bronze
Posts: 320
Joined: Tue Sep 07, 2010 11:38 am
Location: นครสวรรค์

Re: ขอคำชี้แนะครับ จะนับข้อมูลในแถวยังไงว่าเซลไหนมาก่อน มาท

#7

Post by sdmania »

เอ ผมว่าผมแนบไฟล์ไปแล้วนา

อันนี้คือไฟล์แนบ ที่อาจารย์ช่วยหา และนับจำนวนงานที่ทำของแต่ละรหัสพนักงานครับ

ผมคิดว่าจะใช้การค้นหารหัสลูกค้า เพื่อนับจำนวนงวดที่ค้าง จ่ายไม่เต็มงวด มาขึ้นโชว์ครับ
You do not have the required permissions to view the files attached to this post.
Post Reply