Page 1 of 1

แก้ไขข้อมูลแล้วบันทึกต่อท้ายตลอดเลยครับ รบกวนด้วยนะครับ

Posted: Sun Nov 11, 2018 8:11 pm
by zujeab
จากการที่บันทึกข้อมูลตาม form เรียบร้อยแล้ว ข้อมูลบันทึกลง Sheet "DATAWORK" เเล้วมีบางข้อมูลที่มีการบันทึกผิดพลาดต้องแก้ไข เมื่อเขียน code vba ในส่วนของการค้นหาเรียบร้อยแล้ว แต่เมื่อแก้ไขข้อมูลพร้อมกดปุ่มแก้ไข ปรากฏว่าผลที่ได้ข้อมูลไม่แก้ไขที่บรรทัดเดิมที่มีข้อมูลอยู่ แต่ข้อมูลกับแก้ไขพร้อมบันทึกต่อท้ายจากด้านล่างตลอดเลยครับ อยากให้ข้อมูลแก้ไขพร้อมบันทึกลงตรงตำแหน่งเดิมใน sheet "DATAWORK" ครับผม รบกวนด้วยนะครับ

Re: แก้ไขข้อมูลแล้วบันทึกต่อท้ายตลอดเลยครับ รบกวนด้วยนะครับ

Posted: Sun Nov 11, 2018 8:33 pm
by snasui
:D ตัวอย่างการปรับ Code ครับ

ประกาศตัวแปร editRow ไว้บนสุดของ Module แล้วนำไปใช้ใน Procedure CmdFind_Click และ CBUPDATE_Click ตามด้านล่าง

Code: Select all

Dim editRow As Integer

Private Sub CmdFind_Click()
    On Error Resume Next
    'Err.Clear
    Dim nRow As String
    nRow = Worksheets("DATAWORK").Columns(2).Find(Txtfind.Text).Row
    editRow = CInt(nRow)
'Other code

Private Sub CBUPDATE_Click()
    Dim irow As String
    Dim ws As Worksheet
    Set ws = Worksheets("DATAWORK")
    'irow = ws.Cells(Rows.Count, 1) _
            .End(xlUp).Offset(1, 0).Row
     If editRow = 0 Then
        Exit Sub
     Else
        irow = editRow
     End If
'Other code
ควรทบทวนการประกาศตัวแปรที่ให้ผลลัพธ์เป็นค่าบรรทัด ค่าคอลัมน์ ปกติแล้วเราจะไม่เลือกประกาศเป็น String เพราะค่าเหล่านั้นคือตัวเลขไม่ใช่ String ครับ

Re: แก้ไขข้อมูลแล้วบันทึกต่อท้ายตลอดเลยครับ รบกวนด้วยนะครับ

Posted: Mon Nov 12, 2018 4:16 pm
by zujeab
ได้แล้วครับ ขอขอบคุณอาจาร์ยด้วยนะครับ เดี่ยวถ้ามีปัญหาครั้งต่อไปผมจะขอรบกวนนะครับ