Page 1 of 1

สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^^"

Posted: Tue Jan 28, 2014 9:49 pm
by imyaipy
คือผมกำลังทำงาน ฟอร์มหนึ่งขึ้นมา โดยในไฟล์ excel มี 3 ชีส
1.หน้าฟอร๋ม
2.หน้าดาต้าเบส
3.หน้าพร้อมปริ้น

คำถาม
1.โดยในหน้าฟอร์มผมได้ทำการบันทึกมาโคร เป็นตัวลบข้อมูลที่กรอกลงไปทั้งหมด มันมีวิธีที่ดีกว่านี้ไหมครับ
2.code ที่จะใช้ในการบันทึกข้อมูลลงในชีสดาต้าเบสนั้น ในการกรอกข้อมูลหลายชุดๆเเล้วให้ทำการบันทึกต่อลงไปมันสามารถเขียนได้แบบไหนเหรอครับ
อันนี้ผมมีตย.codeมาแต่มันคนละส่วนกับคนที่ส่งให้เลยไม่แน่ใจว่าจะแก้แบบไหน
ตน.code
Sub SaveData()
If Sheets("From").Range("B2") <> "" And Sheets("From").Range("B3") <> "" Then
Sheets("Temp").Range("A2:Q186").Copy
Sheets("Database").Range("A" & Rows.Count) _
.End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
MsgBox ("?????????????????????")
Else
MsgBox "?????????????????????????????"
End If
End Sub

3.ในหน้าชีสปริ้นนั้นถ้าผมอยากให้ดึงข้อมูลเป็นลำดับๆ จากชีสดาต้าเบสเป็นลำดับๆมาเพื่อพร้อมปริ้นนั้นต้องใช้ VLOOKUP หรือเปล่าครับ

รบกวนด้วยครับบบบบบบ

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Tue Jan 28, 2014 10:08 pm
by snasui
imyaipy wrote:1.โดยในหน้าฟอร์มผมได้ทำการบันทึกมาโคร เป็นตัวลบข้อมูลที่กรอกลงไปทั้งหมด มันมีวิธีที่ดีกว่านี้ไหมครับ
วิธีนี้เป็นวิธีที่ดีอยู่แล้วหากว่าเป็นการเขียนโปรแกรม ยกเว้นต้องการ Manual
imyaipy wrote:2.code ที่จะใช้ในการบันทึกข้อมูลลงในชีสดาต้าเบสนั้น ในการกรอกข้อมูลหลายชุดๆเเล้วให้ทำการบันทึกต่อลงไปมันสามารถเขียนได้แบบไหนเหรอครับ
อันนี้ผมมีตย.codeมาแต่มันคนละส่วนกับคนที่ส่งให้เลยไม่แน่ใจว่าจะแก้แบบไหน
เขียนแบบที่เขียนมานั่นแหละครับ เพื่อความสะดวกในการนำข้อมูลที่ไม่เป็นระเบียบไปบันทึกลง Database ให้ทำชีทสำหรับพักข้อมูล เปรียบได้กับชีท Database ที่ทำมา แต่ควรจะเปลี่ยนชื่อเป็น Template แทน เพราะว่าเราจะเอาข้อมูลจาก Template ไปบันทึกลง Database อีกที ซึ่งต้องสร้างเพิ่มขึ้นมา ใน Database ไม่ควรมีสูตรครับ

การจะแก้ Code นั้นแบบไหนก็ต้องทราบก่อนว่ากำลังจะทำอะไร เอาข้อมูลจากชีทใด ช่วงข้อมูลใด ไปไว้ที่ไหน ก็แก้ไขให้ Code ทำงานตามนี้
imyaipy wrote:3.ในหน้าชีสปริ้นนั้นถ้าผมอยากให้ดึงข้อมูลเป็นลำดับๆ จากชีสดาต้าเบสเป็นลำดับๆมาเพื่อพร้อมปริ้นนั้นต้องใช้ VLOOKUP หรือเปล่าครับ
ใช้ได้หลายสูตร ค่อย ๆ ถามตอบกันไป ให้ทำมาเป็นลำดับ แก้กันไปทีละเปลาะจะได้เห็นความต้องเนื่อง ลำดับความเข้าใจได้สะดวก

คำว่า ชีส ที่ถูกต้องคือ ชีท หรือ ชีต

การวาง Code ควรวางให้แสดงเป็น Code ไม่จำเป็นต้องระบายสี ดูตัวอย่างได้ที่ Link นี้ครับ viewtopic.php?f=3&t=1187

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Tue Jan 28, 2014 10:41 pm
by imyaipy
ขอโทษครับที่โพสผิดระบบของบอร์ด+พิมพ์ผิด และขอบคุณมากครับผม ผมได้เพิ่มตัวTemplate เเล้วและปล่อยให้ Database ไม่มีสูตรแล้ว(แต่ดูเหมือนไม่ได้ปรับอะไรมาก)

คือสิ่งที่ผมกำลังจะทำนั้น(ความคิดของผมนะครับ) ในชีทFormเป็นตัวที่ผู้ใช้งานจะกรอกข้อมูลลงไปจะมีปุ่มให้กดบันทึกข้อมูลและปุ่มลบข้อมูล เมื่อกดบันทึกข้อมูลแล้วข้อมูลจะไปแสดงในชีทTemplateเพื่อทำการบันทึกข้อมูลไปยังชีทDatabaseโดยในการกดบันทึกนั้นจะบันทึกข้อมูลลงไปตามลำดับการกรอกครับ สุดท้ายเมื่อกรอกข้อมูลครบตามจำนวนแล้วเช่น50ชุด(ก็เท่ากับว่าในชีทDatabaseจะมีการบันทึกไปแล้ว50ชุด) ในชีทPrintนั้นก็จะเป็นฟอร๋มแบบเดิมเหมือนในชีทFormที่พร้อมปริ้นมาใช้งานได้เลยครับ โดยในชีทPrintนั้นจะมีส่วนหรือช่องที่จะใช้VLOOKUPดึงข้อมูลจากชีทDatabaseมาเป็นลำดับๆเพื่อทำการพิมมพ์เอกสารออกมาใช้งานน่ะครับ

นี้คือจุดประสงค์และการกระทำของExcelที่คาดว่าจะทำครับ

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Tue Jan 28, 2014 10:46 pm
by snasui
imyaipy wrote:เมื่อกดบันทึกข้อมูลแล้วข้อมูลจะไปแสดงในชีทTemplate
:D ประโยคนี้เข้าใจไม่ถูกต้องครับ เราจะบันทึกจาก Template ไป Database ไม่ใช่บันทึกจาก Form มา Template

จาก Form มา Template เราใช้การ Link แบบง่าย ๆ เพื่อเรียงข้อมูลในรูปแบบที่พร้อมจะบันทึกลง Database

ไม่ทราบที่แนบมาแล้วนั้น ได้ทำอะไรไปบ้างแล้ว ติดขัดที่ลำดับไหน อย่างไร ควรแจ้งมาด้วย จะได้ช่วยปรับปรุงต่อไปจากนั้น

สำหรับ Code จะต้องเขียนมาเอง ติดตรงไหนสามารถถามมาได้เรื่อย ๆ ครับ

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Wed Jan 29, 2014 8:32 am
by imyaipy
ตอนนี้ผมได้ปรับตามที่บอกเเล้วครับ แต่ในหน้า Database ลองทำไปแก้ไปให้กดบันทึกข้อมูลชุดต่อไปเรื่อยๆ จะทำยังไงให้ข้อมูลมันบันทึกลงไปใน column ถัดไป 1 2 3

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Wed Jan 29, 2014 8:53 am
by joo
:D ลองศึกษาข้อมูลจากลิงค์นี้ไปประยุกต์ปรับใช้ดูครับ
viewtopic.php?f=3&t=3155

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Wed Jan 29, 2014 9:13 pm
by imyaipy
joo wrote::D ลองศึกษาข้อมูลจากลิงค์นี้ไปประยุกต์ปรับใช้ดูครับ
viewtopic.php?f=3&t=3155
ผมลองทำดูเเล้วครับผมไม่ทราบว่ามันยังติดตรงไหนอีกในส่วนCodeที่ปุ่มsave

Re: สอบถามวิธีจัดการกับVBAไฟล์นี้หน่อยครับ ทำมา80%แล้วครับ ^

Posted: Wed Jan 29, 2014 9:30 pm
by snasui
:D คุณต้องอธิบายให้ได้ว่าปัญหาคืออะไร เพื่อนสมาชิกจึงจะช่วยตรวจสอบให้ได้ว่าจะแก้ปัญหานั้นอย่างไรครับ