: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 แบบสัมพันธ์กัน

#81

Post by suka »

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

ขอบคุณค่ะ
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 แบบสัมพันธ์กัน

#82

Post by snasui »

:D ถ้าทำใน Form เดิมไม่ทราบว่าติดปัญหาอะไรหรือไม่ครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#83

Post by suka »

อ้างถึงอาจารย์เคยแนะนำไว้

สำหรับไฟล์นี้คงต้องออกแบบฟอร์มสำหรับการปรับปรุงรายการมาเพิ่ม เนื่องฟอร์มปัจจุบันใช้สูตรในการดึงข้อมูลมาแสดง

ฟอร์มเดิมใช้งานได้ดีแล้วค่ะ
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 แบบสัมพันธ์กัน

#84

Post by snasui »

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

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

#85

Post by suka »

รายการที่ปรับปรุงสามารถใช้สูตรดึงข้อมูลมาได้เช่นเดียวกับฟอร์มเดิมค่ะ มีการ Run เลขที่เหมือน Form เดิมค่ะ
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 แบบสัมพันธ์กัน

#86

Post by snasui »

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

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

#87

Post by suka »

อาจารย์คะ หากเป็นการบันทึกรับคืนสินค้าต้องบันทึกโดยใส่เครื่องหมายลบ เช่น -5 ที่ Database จะบันทึกหัวคอลัมน์มาด้วยค่ะ
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 แบบสัมพันธ์กัน

#88

Post by snasui »

:D ที่ชีท Enterthedata เซลล์ C224 แก้สูตรเป็น

=COUNT(L204:L219)

Enter > จากนั้นลองบันทึกใหม่ครับ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#89

Post by suka »

อาจารย์คะ ที่ Database บันทึกหัวคอลัมน์เช่นเดิมค่ะ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#90

Post by suka »

ขอโทษค่ะ ขอลองใหม่ก่อนค่ะ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#91

Post by suka »

ขออภัยค่ะ อาจารย์ที่ไม่ได้เพราะใส่สูตรผิดเซลล์ใส่ที่ C225 แทนที่จะเป็น C224 ผลใช้ได้แล้วค่ะ

ขอบพระคุณมากค่ะ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#92

Post by suka »

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

1. ที่ชีท Enterthedata เมื่อทำการบันทึก ที่ชีท Document เซลล์ B5 ได้ทำดึงค่า M2 ที่ชีท Enterthedata เพื่อรันเลขที่บิล ที่เซลล์ J2 ที่ชีท Enterthedata แสดงประเภทรายการที่บันทึก ( เป็นตัวอย่างที่ต้องการเท่านั้นค่ะ )
2. ที่ชีท Enterthedata ได้แทรกคอลัมน์ L สำหรับรายการลดพิเศษเฉพาะกิจ ใช้เท่านั้น รบกวนอาจารย์ช่วยตรวจสูตรที่ M204:M222 เพื่อให้ได้สูตรที่ถูกต้อง
ตัวอย่างที่ชีท Enterthedata เป็นตัวเลขที่ถูกตามต้องการค่ะ

ขอบพระคุณค่ะ
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 แบบสัมพันธ์กัน

#93

Post by snasui »

:D ข้อ 1 อ่านแล้วไม่เคลียร์ครับ ปัญหาคืออะไร และต้องการผลลัพธ์เป็นอย่างไรครับ

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

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

#94

Post by suka »

ค่ะอาจารย์ ขอลองเล่าปํญหาอีกรอบนะคะ

คือที่เซลล์ M2 ในชีท Enterthedat ได้ทำ Drop Down List เพื่อเลือกรายการบิล ประเภทงานที่ทำ (เช่นเลือก ผลิต ) 20000001
หากที่เซลล์ B3 ทำเหมือน เซลล์ B5 ในชีท Document ที่ทำดึงค่า M2 ที่ชีท Enterthedata ก็จะได้ค่าที่เหมือนกัน
ปัญหาคือจะทำอย่างไรให้ระบบรู้ว่า ตอนนี้ใบผลิตเลขสุดท้ายอยู่ที่ 20000001 และ ใบส่งสินค้าชั่วคราว 54003083 น่ะค่ะ
( ที่จริงยังไม่แน่ใจว่าตาราง ในชีท Documen ใช้ได้มั้ยด้วยค่ะ )

ขอบพระคุณค่ะ
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 แบบสัมพันธ์กัน

#95

Post by snasui »

:D เมื่อต้องการจะรู้ว่า ผลิต รับคืน ขาย สั่งซื้อ ฯลฯ ใบสุดท้ายอยู่ที่เท่าไรก็สามารถใช้สูตรหามาได้ครับ รายการดังกล่าวบันทึกลงในฐานข้อมูลด้วยนี่ครับ ถ้าดูในชีท Database คือในคอลัมน์ I

เช่นเราต้องการหาว่าขายใบสุดท้ายเป็นเลขที่เท่าใด ที่เซลล์ใด ๆ คีย์

=Lookup(2,1/(Database!I2:I10000="ขาย"),Database!B2:B1000)

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

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

#96

Post by suka »

อาจารย์คะ ถามอีกนิดค่ะสูตรนี้ใส่ที่ชีทใดเซลล์ใดคะ ใช่ M2 ที่ชีท Enterthedata ไหมคะ

=Lookup(2,1/(Database!I2:I10000="ขาย"),Database!B2:B1000)

ขอบคุณค่ะ
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 แบบสัมพันธ์กัน

#97

Post by snasui »

:D ตำแหน่งที่ต้องการทราบหมายเลขสุดท้ายครับ อาจจะเป็นชีท Document

ยกตัวอย่างเช่น เซลล์ B2 ของชีท Document หากต้องการทราบว่ามีการส่งซื้อใบสุดท้ายที่เท่าไรคีย์

=Lookup(2,1/(Database!$I$2:$I$10000=C2),Database!$B$2:$B$1000)

Enter > หากต้องการทราบรายการสุดท้ายของประเภทอื่น ๆ ก็ Copy ลงด้านล่าง
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#98

Post by suka »

ใช้ได้แล้วค่ะ ขอบคุณค่ะ
User avatar
suka
Silver
Silver
Posts: 918
Joined: Tue Nov 16, 2010 7:38 pm
Excel Ver: 2007,2021

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

#99

Post by suka »

อาจารย์คะ ขอรบกวนเพิ่ม เซลล์ M2 ของชีท Enterthedata เรียกเอกสารใบสุดท้าย + 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 แบบสัมพันธ์กัน

#100

Post by snasui »

:D ก็เพียงแค่เขียนสูตรที่ผมให้ไปในเซลล์ M2 แล้วบวก 1 ต่อท้ายเข้าไปเท่านั้น ระวังการอ้างอิงเซลล์ที่เป็น Transaction ให้ถูกต้องด้วย ตรง Transaction นี้ควรทำ Validation เพื่อเลือกขึ้นมา เพื่อให้ M2 นำไปใช้ต่อ แทนแบบเดิมที่ดูค่าหมายเลขเอกสารแล้วระบุ Transaction
Post Reply