: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

ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน"

ฟอรัมถาม-ตอบปัญหาการใช้งาน 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
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#101

Post by suka »

อาจารย์คะ ไฟล์นี้ใช้งานได้ตามต้องการครบสมบูรณ์แล้ว ขอสมมุติไฟล์นี้เป็นโปรแกรม " สินค้าพร้อมขาย "

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

ขอบพระคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#102

Post by snasui »

:D ตอบแบบเร็ว ๆ คือทำได้ทั้งแยกไฟล์และไม่แยกไฟล์ครับ แต่จะใช้ได้จริงหรือไม่อยู่ที่ปริมาณข้อมูลและรุ่นของโปรแกรม Excel ที่ใช้ครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#103

Post by suka »

ใช้โปรแกรม Excel 2003 ค่ะ หากต้องการแบบทำให้ใช้งานได้จริงน่ะค่ะ
อาจารย์แนะวิธีทำตารางเป็นแนวทางหน่อยนะคะ

ขอบคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#104

Post by snasui »

:D สำหรับรูปแบบการทำงาน สามารถถาม-ตอบกันในฟอรั่มนี้ได้เสมอตามต้องการครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#105

Post by suka »

อาจารย์คะ

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

ขอบคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#106

Post by snasui »

:) อันนี้ก็ต้องทราบว่าสินค้าพร้อมขายนี้ต้องตัดวัตถุดิบกี่ตัว สินค้าพร้อมขายผมถือว่าเป็นสินค้าสำเร็จรูปครับ

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

การบันทึกสินค้าพร้อมขาย ควรจะเกิดหลังจากนั้น ไม่ใช่เมื่อบันทึกสินค้าพร้อมขายแล้วไปตัดวัตถุดิบ แต่การตัดวัตถุดิบจากคลังเกิดขึ้นก่อนแล้วแปรสภาพไปเป็นสินค้าพร้อมขายครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#107

Post by suka »

อาจารย์คะ ขอรบกวนอีกค่ะ ที่ชีท Enterthedat หากกดปุ่ม Record แล้วให้บันทึกข้อมูลโดย
ไม่ต้องมี ปุ่ม Record Complete แสดงขึ้นให้กดอีกรอบได้ไหมคะ

ขอบพระคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#108

Post by snasui »

:) เข้าไปใน VBE แล้วลบบรรทัดด้านล่างทิ้งไปครับ

Code: Select all

MsgBox "Record Complete"
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#109

Post by suka »

ขอบคุณค่ะ อาจารย์ทำได้แล้วระบบเรียบร้อยสมบูรณ์ใช้งานได้ดี ขอบคุณสำหรับคำแนะนำดีๆๆ ช่วยเรื่องยากให้เป็นเรื่องง่ายๆๆ
ขอให้อาจารย์ได้รับความสุขได้รับแต่สิ่งดีดีนะคะ
jong
Member
Member
Posts: 8
Joined: Mon Mar 28, 2011 3:26 pm

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#110

Post by jong »

เป็น กระทู้ที่ มีประโยชน์มากครับ สำหรับผู้ที่ต้องการนำไปประยุกต์ใช้
สำหรับผมเองเคยคิด และก็ยังคิดอยู่ ที่จะนำเอ็กเชลใช้ทำงานเรื่องฐานข้อมูล เพื่อทำงานเกี่ยวกับสต็อกสินค้า
เคยศึกษา VBกับAccess อยู่พักหนึ่ง เพราะต้องทำงานหลัก ก็เลยหยุดไป แต่ก็ยังใช้เอ็กเชลสรุปยอดอยู่ครับ แต่ในการคีย์ น้องที่ทำงานเขาเป็นคนทำครับ
ข้อมูลทั้งหมดจะมีอยู่ประมาณ เกือบๆ 500 เร็กคอร์ด ไม่มีอะไรซับซ้อนมาก ข้อมูลจะสรุปจากข้างนอกแล้วค่อยมารวมข้างในอีกที
อันที่จริงอยากทำให้มากว่านี้นะครับ ทำให้เป็นระบบสต็กเต็มรูปแบบเลย แต่ทำไม่เป็น เพราะจะฝึกทำเฉพาะตอนที่ว่าง และก็ถ่ายทอดให้คนที่ใช้งานจริงอีกที
ซึ่งถ้าให้เต็มระบบคงต้องมี ดาต้าชีตหลายตัวเลยละครับ ตั้งแต่ ชีตตัวของสินค้าและวัตถุดิบ ชีตรับเข้าจากผู้จำหน่าย ชีตจ่ายเพื่อผลิต ชีตรับเข้าจากการผลิต และอีกหลายๆชีต รวมถึงส่วนที่รับข้อมูล บันทึกและออกรายงาน แค่เอาไว้ว่า ถ้ามีโอกาสก็จะทำให้ได้ เพราะ เอ็กเชลรุ่นใหม่ๆ เขาเพิ่มความสามารถมาเยอะแล้ว

แต่ก็จะเรียนรู้จากที่นี่เป็นอันดับแรกครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#111

Post by suka »

สวัสดีค่ะ
อาจารย์คะขอรบกวนค่ะ ที่ชีท Enterthedata หากต้องการให้ Drop-Down List ที่เซลล์ B204:B219
แสดงอักษรตัวแรกเมื่อพิมพ์ เหมือนลิงก์นี้ http://www.snasui.com/viewtopic.php?f=3&t=936 น่ะค่ะ
มิทราบว่าต้องทำอะไรเพิ่มบ้างคะ หรือหากต้องเพิ่มโค๊ดก็ขอรบกวนอาจารย์นะคะ

ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#112

Post by snasui »

:D ได้ทดสอบ Code ตาม Link นี้แล้วยังครับ http://www.snasui.com/viewtopic.php?p=6135#p6135

ลอง Add Code ปรับให้ตรงกับงานติดขัดตรงไหนถามได้เรื่อย ๆ ครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#113

Post by suka »

อาจารย์คะ Add Code อย่างเดียวหรือคะ แล้วสูตรตามลิงก์ไฟล์ Auto Complete On-1 ที่ชีท 1 ที่คอลัมน์ D:E ต้อง Copy สูตรด้วยไหมคะ
ขอบคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#114

Post by snasui »

:D
snasui wrote: :D ได้ทดสอบ Code ตาม Link นี้แล้วยังครับ http://www.snasui.com/viewtopic.php?p=6135#p6135

ลอง Add Code ปรับให้ตรงกับงานติดขัดตรงไหนถามได้เรื่อย ๆ ครับ
จากด้านบนที่ยกมา หมายความว่าทำทุกอย่างให้ตรงกับที่ต้องการ หากติดขัดตรงส่วนใดก็ถามกันต่อครับ การจะใช้ Code VBA ควรต้องปรับ Code ได้ด้วยครับ และหากไม่สามารถปรับเองได้บ้างก็ยังไม่ควรใช้ VBA ครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#115

Post by suka »

อาจารย์คะ
ส่งไฟล์ตัวอย่างมาอีกรอบค่ะ ขอรบกวนอาจารย์แนะนำเพิ่มนะคะ

ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#116

Post by snasui »

:D เพิ่ม Code ด้านล่างในชีท Enterthedata

Code: Select all

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error Resume Next
If Not Intersect(Target, Range("B204:B219")) Is Nothing Then
    Worksheets("Other").Range("G1") = Target
End If
Target.Select
If Len(Target) < 3 Then
    Application.SendKeys "%{DOWN}"
End If
Application.EnableEvents = True
End Sub
นอกจากนั้นสังเกตการปรับสูตร Range name ที่ชื่อ Group ดูไฟล์แนบประกอบครับ
You do not have the required permissions to view the files attached to this post.
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#117

Post by suka »

อาจารย์คะ ขอรบกวนช่วยดูที่ชีท Enterthedata คอลัมน์ B204:B219 ให้หน่อยนะคะ
ไฟล์ที่ส่งมานี้ได้ทำเรียนแบบไฟล์แนบของอาจารย์ค่ะ แต่ไม่ทราบว่าพลาดที่จุดใดผลจึงไม่ได้ผล ( ตามไฟล์แนบของอาจารย์
เช่นหากพิมพ์อักษรตัวแรกที่ชีท Enterthedata คอลัมน์ B204:B219 แล้วที่ชีท Other คอลัมน์ G1 จะได้ตามที่พิมพ์ )

ส่วนไฟล์นี้ไม่ได้เป็นตามนั้นเลยค่ะ รบกวนอาจารย์ช่วยชี้จุดที่พลาดให้ด้วยนะคะ

ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#118

Post by snasui »

:D คุณ suka วาง Code ที่ผมเขียนให้ไปผิดที่ครับ ดูตัวอย่างจากไฟล์ที่แนบไปให้ในความเห็นด้านบนครับ ผมจะวางที่ชีท Enterthedata ไม่ได้วางต่อจาก Code เดิมใน Module ปกติเช่นไฟล์ที่แนบมาครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#119

Post by suka »

อาจารย์คะ คำถามก่อนหน้านี้ วาง Code ผิดที่แก้เรียบร้อยใช้งานได้แล้วค่ะ

ขอรบกวนอาจารย์อีกรอบค่ะ ที่ชีท Enterthedata เรื่องสูตรที่คอลัมน์ M204:M219 น่ะค่ะ
หากใส่ตัวเลขที่คอลัมน์ L204:L219 จะคำนวณส่วนลดเป็นเปอร์เซ็นต์ได้อย่างเดียว หากต้องการให้ลดเป็นจำนวนเงินบาทได้ด้วยต้องปรับสูตรอย่างไรคะ

ขอบพระคุณมาก
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ได้แรงบันดาลใจจาก "เทคนิคการทำ Validation แบบสัมพันธ์กัน

#120

Post by snasui »

:D ลองกรอกข้อมูลเป็นตัวอย่างมาหน่อยครับ ช่วยอธิบายให้เห็นว่าเดิมเป็นค่าใดและต้องการให้เป็นค่าใด
Post Reply