Page 1 of 1

สอบถามเรื่อง Code VBA Input ข้อมูลจากหน้า Form แล้วส่งข้อมูลไปบันทึกลงตาราง

Posted: Wed Mar 21, 2018 9:50 am
by jullathep
คือ ผม อยากให้ข้อมูลที่เราบันทึกแล้วให้ข้อมูลมันเรียงต่อกันลงมาหนะครับ ผมต้องวาง Code ต่อ ว่าอย่างไรครับ

Code: Select all

Private Sub Btn_Input_Click()
Dim ws As Worksheet
Set ws = Workbooks("DataBase.xlsx").Worksheets("Add_User")
emptyRow = WorksheetFunction.CountA(Range("B:B")) + 2
ws.Cells(emptyRow, 1).Value = Txt_username.Value
ws.Cells(emptyRow, 2).Value = Txt_password.Value
ws.Cells(emptyRow, 3).Value = Txt_fullname.Value
ws.Cells(emptyRow, 4).Value = Txt_Email.Value
ws.Cells(emptyRow, 5).Value = Txt_Tell.Value
ws.Cells(emptyRow, 6).Value = Txt_Class.Value
End Sub
ขอบคุณครับ

Re: สอบถามเรื่อง Code VBA Input ข้อมูลจากหน้า Form แล้วส่งข้อมูลไปบันทึกลงตาราง

Posted: Wed Mar 21, 2018 7:32 pm
by snasui
:D ควรแจ้งปัญหามาด้วยว่า Code ที่เขียนมานั้นติดขัดบรรทัดใดจะได้เข้าถึงปัญหาโดยไว

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

ในเบื้องต้นปรับการกำหนดค่าตัวแปร emptyRow เป็น emptyRow = WorksheetFunction.CountA(ws.Range("B:B")) + 2 ครับ

Re: สอบถามเรื่อง Code VBA Input ข้อมูลจากหน้า Form แล้วส่งข้อมูลไปบันทึกลงตาราง

Posted: Thu Mar 22, 2018 8:24 am
by jullathep
snasui wrote: Wed Mar 21, 2018 7:32 pm :D ควรแจ้งปัญหามาด้วยว่า Code ที่เขียนมานั้นติดขัดบรรทัดใดจะได้เข้าถึงปัญหาโดยไว

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

ในเบื้องต้นปรับการกำหนดค่าตัวแปร emptyRow เป็น emptyRow = WorksheetFunction.CountA(ws.Range("B:B")) + 2 ครับ
ขอบคุณครับอาจารย์

Re: สอบถามเรื่อง Code VBA Input ข้อมูลจากหน้า Form แล้วส่งข้อมูลไปบันทึกลงตาราง

Posted: Thu Mar 22, 2018 8:57 am
by jullathep
อาจารย์ครับ ผม เอาไฟล์ Excel Input ไปลองเทสวางไว้อีกเครื่อง หนึ่ง แล้ว Input ข้อมูล เข้ามา กดตกลงแล้วเกิด error

Private Sub Btn_Input_Click()
Dim ws As Worksheet
Set ws = Workbooks("DataBase.xlsx").Worksheets("Add_User")
emptyRow = WorksheetFunction.CountA(ws.Range("B:B")) + 1
ws.Cells(emptyRow, 1).Value = Txt_username.Value
ws.Cells(emptyRow, 2).Value = Txt_password.Value
ws.Cells(emptyRow, 3).Value = Txt_fullname.Value
ws.Cells(emptyRow, 4).Value = Txt_Email.Value
ws.Cells(emptyRow, 5).Value = Txt_Tell.Value
ws.Cells(emptyRow, 6).Value = Txt_Class.Value
End Sub

Set ws = Workbooks("DataBase.xlsx").Worksheets("Add_User") ตรงนี้ขึ้นว่า Script out of Range ผมควรแก้อย่างไรดีครับ ท่านอาจารย์

Re: สอบถามเรื่อง Code VBA Input ข้อมูลจากหน้า Form แล้วส่งข้อมูลไปบันทึกลงตาราง

Posted: Thu Mar 22, 2018 6:45 pm
by snasui
:D ผมทดสอบแล้วพบว่า Code ทำงานได้ตามปกติครับ

Code นี้จะทำงานได้ก็ต่อเมื่อมีการเปิดพร้อมกันทั้งสองไฟล์ครับ