Page 1 of 1

บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 2:42 pm
by bubblebee
เรียน ท่านผู้รู้

พึ่งหัดเขียน VBA จะทำ file ข้อมูลขอเรียนสอบถามดังนี้ค่ะ
1.จาก sheet input เมื่อกรอกข้อมูลเสร็จพอบันทึกแล้วมัน Debug ไม่ทราบต้องแก้ยังไงค่ะ
2.จาก sheet input Highlight สีเหลือง Active Donor มันไม่ทำงานค่ะ
3.จาก sheet input พอกรอกข้อมูล Donor ทั้งหมดแต่มันไม่สามารถบันทึกเข้าไปใน sheet database cell Donor ทั้งหมด
4.จาก sheet database ช่อง input Donor เขียนสูตร offset ผิดหรือเปล่าค่ะ

ยังไงรบกวนด้วยนะค่ะ ช่วยชี้แนะด้วยค่ะ ขอบพระคุณอย่างสูง :flw:

Re: บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 2:54 pm
by tupthai
หา range name ชื่อ InputDonor ไม่เจอครับ

Re: บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 3:02 pm
by bank9597
:D ลองโค๊ดนี้ดูครับ

Code: Select all

Sub KeepDonor()
If Sheets("Input").Range("C4") <> "" Then
    Sheets("Database").Range("B3:P3") _
            .Resize(1, 15).Copy
    Sheets("Database").Range("B" & Rows.Count) _
            .End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
            MsgBox "ºÑ¹·Ö¡¢éÍÁÙÅàÃÕºÃéÍÂ"
Else
    MsgBox "¤Ø³ÂѧäÁèÃкØâ¤ê´"
End If
Application.CutCopyMode = False
End Sub

Re: บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 3:08 pm
by bubblebee
แล้วทำไงค่ะ ไปไม่เป็นแล้วค่ะ มึนเลย ;)

Re: บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 3:12 pm
by bubblebee
:rz: ขอขอบพระคุณอย่างสูงเจ้าค่ะ ทำได้แล้ว เดี๋ยวจะไปแกะดูว่าเป็นยังไง ขอบคุณมากๆ นะค่ะ :D

Re: บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 3:27 pm
by bank9597
:D หากจะใช้โค๊ดที่ผมแนะนำไป จะต้องปรับโค๊ดเพิ่มอีกครับ เพราะว่าผมทำไว้แค่เป็นตัวอย่างเท่านั้น

เท่าที่เห็นโค๊ดเดิมของคุณ ก็คิดว่าน่าจะมีการล๊อคเซลล์ด้วย และต้องกันการคีย์ผิด คีย์ไม่ครบ และอีกมากมายครับ ต้องปรับอีก

ส่วนโคีดเดิมที่คุณทำมาก่อนหน้านี้ ผมจะดูให้อีกครั้งครับ :D

Re: บันทึกข้อมูลแล้วมัน debug ค่ะ

Posted: Wed Apr 04, 2012 3:45 pm
by bank9597
:D หากยึดตามโค๊ดเดิมที่ผู้ถาม ได้ถามมานั้น สามารถแก้ไขได้ดังนี้

เหตุที่เกิด Debug เกิดจากไม่มี RangeName ที่ชื่อ "InputRow" ตามที่คุณ Tupthai บอกไว้

ผมเลยสร้าง RangeName ที่ชื่อ "InputRow" ขึ้นมา แล้วทดสอบรันโค๊ดดู ปรากฏว่าใช้งานได้ปกติครับ

ส่วนสูตรที่ระบุลงใน RangeName นั้น ต้องไปศึกษาเพิ่มเติมครับ