snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#1
Post
by Patcha » Sun Sep 04, 2011 7:31 pm
ดิฉันได้ออกแบบการจัดเก็บสต๊อก
ต้องการสรุปว่า แต่ละModel มีการนำเข้า, เบิกออก, คงเหลือ เนื่องจากประเภทใดบ้าง ในชีสสรุปค่ะ ซึ่งดิฉันได้เข้าไปหาในgoogleแล้วค่ะ แต่ด้วยความที่ไม่ค่อยเป็นเอ็กเซล จึงไม่รู้ว่าจะใช้สูตรใดดีค่ะ
รบกวนทุกท่านด้วยค่ะ
ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#2
Post
by snasui » Sun Sep 04, 2011 8:44 pm
แนะนำให้เก็บข้อมูลการเคลื่อนไหวสินค้าเป็น Database ตามไฟล์ที่ผมแนบมาครับ จากนั้นสามารถใช้สูตรหรือใช้ PivotTable เข้ามาช่วยหายอดคงเหลือได้ครับ
เมื่อเป็น Database แล้วในชีทสรุปสามารถจัดการได้ง่ายขึ้้น ดูตัวอย่างจากไฟล์แนบครับ
You do not have the required permissions to view the files attached to this post.
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#3
Post
by Patcha » Mon Sep 05, 2011 10:14 pm
ขอบคุณค่ะ
ดิฉันได้ลองทำตามคำแนะนำแล้วค่ะ แต่มีคำถามเพิ่มเติมค่ะ
-ดิฉันต้องการให้ชื่อModelจาก sheet dataมาอัตโนมัติในหน้านี้ แล้วต้องการให้คอลัมน์ชื่อสินค้าโชว์อัตโนมัติ
และคอลัมน์ From กับ To ให้ขึ้นวันที่ ค่ะ
คอลัมน์Beginning ดิฉันต้องใส่สูตรอย่างไรค่ะโดยไม่ต้องคีย์
ซึ่ง**ดิฉันลองใช้NameBoxเข้าช่วย แต่ข้อมูลไม่โชว์ตามที่คิดค่ะ**
ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#4
Post
by snasui » Mon Sep 05, 2011 11:16 pm
ช่อง Beginning นำข้อมูลมาจากไหน และช่อง From และ To ดึงมาแสดงด้วยเงื่อนไขใด นำข้อมูลมาจากที่ใด ช่วยระบุและช่วยกรอกค่าที่ถูกต้องมาเป็นตัวอย่างด้วยครับ
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#5
Post
by Patcha » Tue Sep 06, 2011 8:23 pm
รบกวนอีกครั้งค่ะ
1.ดิฉันต้องการให้ชื่อModelจาก sheet dataมาอัตโนมัติในหน้านี้ แล้วต้องการให้คอลัมน์ชื่อสินค้าโชว์อัตโนมัติด้วยค่ะ โดยที่หากเพิ่มข้อมูลในDataแล้วให้ชีส สรุปนี้ขึ้นอัตโนมัติค่ะ
2.From, To ต้องการเลือกเป็นเดือนได้
3.ช่องประเภทนำเข้า, เบิกออก ต้องการให้โชว์ข้อมูลอัตโนมัติ โดยต้องสัมพันธ์กับFrom และ To ค่ะ
4.ช่องBeginningคิดไว้ว่า เป็นยอดยกมาของปีหน้าค่ะ
ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#6
Post
by snasui » Tue Sep 06, 2011 8:58 pm
ดูตัวอย่างตามไฟล์แนบครับ
สำหรับยอด Beginning เข้าใจว่าเป็นยอดยกมาของปีที่แล้วไม่น่าจะใช่ตามด้านล่างครับ
Patcha wrote: 4.ช่องBeginningคิดไว้ว่า เป็นยอดยกมาของปีหน้าค่ะ
You do not have the required permissions to view the files attached to this post.
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#7
Post
by Patcha » Tue Sep 06, 2011 9:43 pm
ขอบคุณอาจารย์มากค่ะ ดิฉันจะลองนำไปทำค่ะ
ดิฉันรู้สึกดีใจมากเลยค่ะ ที่มีเว็บนี้คอยให้คำแนะนำที่ดี
ขอให้อาจารย์ ผู้ดูแลเว็บนี้ ทุกคนที่เกี่ยวข้องขอให้พบแต่สิ่งดีๆๆนะค่ะ
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#8
Post
by Patcha » Tue Sep 06, 2011 9:48 pm
ขอเพิ่มเติมค่ะ
ถ้าในปีหน้า ดิฉันคิดว่าควรที่จะยกข้อมูลของปีนี้ไปเพื่อแสดงยอดยกมา แต่ไม่รู้ว่าใช้สูตรอย่างไรดีค่ะ
ขอบคุณค่ะ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#9
Post
by snasui » Tue Sep 06, 2011 9:52 pm
หากต้องการดูยอดยกมาเป็นงวด ๆ ก็ควรทำยอดคงเหลือเป็นงวด ๆ ตามที่ต้องการใช้งานไว้อีก Database ต่างหากแล้วค่อยใช้สูตรดึงมาใช้ครับ
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#10
Post
by Patcha » Tue Sep 13, 2011 10:18 pm
มีข้อสงสัยค่ะ อยากทราบว่าพอมีวิธีที่
เดือน ชื่อสินค้า
11/1/54 กกกกกก
15/1/54 ขขขขขข
16/3/54 กกกกกก ==>มีวิธีที่ป้องกันไม่ให้ผู้จัดทำคีย์ผิดไหมค่ะ หรือหากคีย์ผิดให้โชว์ข้อมูลฟ้องขึ้นว่าคีย์ผิด
ขอบคุณค่ะ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#11
Post
by snasui » Tue Sep 13, 2011 10:34 pm
การป้องกันการคีย์ผิดสามารถใช้ Validation มาช่วยได้ครับ
ตัวอย่างการกำหนด Validation ให้เลือกพื้นที่เป้าหมาย > เข้าเมนู Data > Validation > ช่อง Allow: เลือก List > ช่อง Source: คีย์ Jan,Feb,Mar > OK
การกำหนดเช่นนี้ในเซลล์เป้าหมายสามารถคีย์ได้เฉพาะ Jan, Feb, Mar เท่านั้น หากคีย์ค่าอื่นโปรแกรมจะแสดงกล่องเตือนว่าผิดพลาดครับ
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#12
Post
by Patcha » Tue Sep 13, 2011 11:31 pm
ขอบคุณค่ะ
แล้วสามารถนำมาใช้กับชื่อสินค้า เพื่อไม่ให้มีการคีย์ผิดได้ไหมค่ะ
ขอบคุณค่ะ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#13
Post
by snasui » Tue Sep 13, 2011 11:38 pm
ลองทำดูก่อนครับ ติดตรงไหนก็ถามมาได้เรื่อยๆ ครับ
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#14
Post
by Patcha » Sun Sep 25, 2011 9:07 pm
รบกวนสอบถามอาจารย์ด้วยค่ะ
ดิฉันอยากทราบว่า ในเอ็กเซลสามารถเขียนให้โปรแกรมทำอัตโนมัติได้ไหมค่ะ อ้างอิงจากไฟล์stockmovementเดิมค่ะ
คือ ถ้าปีหน้า ในsheetสรุปอีกแบบ นำยอดช่องclosingมาวางในช่องยกมา แล้วให้ทำการลบข้อมูลในsheet data
คอลัมน์I อัตโนมัติ ทำได้ไหมค่ะ
ขอบคุณค่ะ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#15
Post
by snasui » Sun Sep 25, 2011 10:36 pm
การบวกลบธรรมดาด้วยสูตรเป็นอัตโนมัติโดยธรรมชาติอยู่แล้วครับ เว้นเสียจากว่าไปกำหนดให้การคำนวณเป็นแบบ Manual
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#16
Post
by Patcha » Sun Sep 25, 2011 10:51 pm
ดิฉันได้ยินมาว่าสามารถเขียนสูตรให้ทำอัตโนมัติหรือทำซ้ำๆได้ เลยคิดมาจะนำมาดัดแปลงกับการทำงานนี้ค่ะ
(เหตุผลเพราะว่าผู้ทำข้อมูลใช้คอมไม่เป็น และเคยทำให้ได้ข้อมูลไม่ถูกต้อง) เลยหาวิธีที่จะใช้สูตรหรือวิธีการเพื่อsupport
ซึ่งดิฉันไม่ค่อยมีความรู้ด้านเอ็กเซลมาก(มีซื้อหนังสือเกี่ยวกับเอ็กเซลมาอ่าน) ขอคำแนะนำด้วยค่ะ
"นำยอดช่องclosingมาวางในช่องยกมา แล้วให้โปรแกรมทำการลบข้อมูลในsheet data คอลัมน์I อัตโนมัติ ทำได้ไหมค่ะ
ขอบคุณค่ะ
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#17
Post
by snasui » Sun Sep 25, 2011 11:37 pm
ที่ตอบไปแล้วเข้าใจว่าอย่างไรครับ ถ้าเข้าใจเป็นอื่นจะได้อธิบายเพิ่มเติม
snasui wrote: การบวกลบธรรมดาด้วยสูตรเป็นอัตโนมัติโดยธรรมชาติอยู่แล้วครับ เว้นเสียจากว่าไปกำหนดให้การคำนวณเป็นแบบ Manual
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#18
Post
by Patcha » Mon Sep 26, 2011 10:06 pm
สวัสดีอาจารย์ค่ะ
ดิฉันได้ออกแบบฟอร์มขอคำแนะนำด้วยค่ะ
สิ่งที่คิดไว้ ไม่รู้ว่าสามารถทำได้รึป่าวค่ะ
1.ต้องการให้ข้อมูลModel, ชื่อวัสดุ จากชีส databaseมาไว้ที่ชีสนี้
2.เมื่อนำคงเหลือมาวางในช่องยกมา แล้วให้ข้อมูลในคอลัมน์D, E ที่ชีส database ลบอัตโนมัติ(สามารถให้marco หรือวิธีอื่น)
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31176 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#19
Post
by snasui » Mon Sep 26, 2011 10:56 pm
ตอนแรกผมเข้าใจว่าใช้สูตรหักลบกันอัตโนมัติ เพราะไม่ได้คิดว่าต้องการลบข้อมูลทิ้งไปอัตโนมัติ การลบข้อมูลทิ้งอัตโนมัติสามารถใช้ VBA มาช่วยได้ครับ
สำหรับการทำยอดยกมายกไปไม่จำเป็นต้องลบข้อมูลต้นแหล่งทิ้งครับ ยอดคงเหลือเราควรจะเก็บไว้อีกหนึ่ง Database ต่างหาก เป็นยอดคงเหลือของแต่ละปี หรือแต่ละเดือน หรือแต่ละอาทิตย์ หรือแต่ละวัน แล้วแต่ต้องการ หากไม่ทำเช่นนี้ก็ต้องใช้โปรแกรมคำนวณในทุก ๆ ครั้งที่ต้องการยอดคงเหลือ ซึงจะทำให้เสียเวลาประมวลผล กรณีข้อมูลไม่มากนักก็ใช้วิธีเก็บยอดคงเหลือไว้อีกหนึ่ง Database แล้วค่อยใช้สูตรดึงมาใช้จะสะดวกกว่าครับ
ตัวอย่าง ตามภาพด้านล่างการเป็นเก็บยอดคงเหลือเป็น Database เป็นรายปี
You do not have the required permissions to view the files attached to this post.
Patcha
Member
Posts: 14 Joined: Sun Sep 04, 2011 5:45 pm
#20
Post
by Patcha » Tue Sep 27, 2011 8:27 pm
ขอบคุณอาจารย์ค่ะ
ดิฉันสามารถเข้าไปดูที่เว็บใดได้บ้างค่ะ "VBAกับคำสั่งให้ลบคอลัมน์อัตโนมัติ พร้อมกับขั้นตอนการใช้ได้ที่ใดค่ะ"
ขอบคุณค่ะ