Page 1 of 1

ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 9:40 pm
by akekorn
เรียน เพื่อนสมาชิกทุกท่าน
วันนี้ผมมีปัญหาการเขียน vba ควบคุม form มาสอบถามครับคือ
ความต้องการของผมคือเมื่อใส่รหัสพนักงานหากมีอยู่ในฐานข้อมูลอยู่แล้วให้แสดงขึ้นมาที่ form เลย
แต่หากไม่มีจะให้ถามว่าต้องการจะเพิ่มข้อมูลใหม่่ใช่ไหม
แต่ผมได้ลองทำแล้วปรากฎไม่ค่อยได้เรื่องจึงอยากรบกวนสอบถามเพื่อนสมาชิกท่านใดหากช่วยแก้ไข
ให้ผมทำงานได้ตามต้องการรบกวนอนุเคราะห์ด้วยครับ

โดยผมได้แนบfile มาด้วย
ขอบคุณมากครับผม
เอกกร

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 9:44 pm
by snasui
:D ช่วยแนบไฟล์ที่เป็น .xlsm หรือ .xlsb ที่มี Code มาพร้อมแล้วจะได้ตอบต่อไปจากนั้นครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 9:58 pm
by akekorn
ขออภัยครับผมส่งผิด

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 9:58 pm
by akekorn
file ที่ผมทำครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 10:06 pm
by snasui
:D ยังไม่เข้าใจครับ

ช่วยลำดับการทำงานก่อนหลัง ค่าทดสอบ ผลลัพธ์ที่ต้องการ จะได้สะดวกต่อการทำความเข้าใจครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 10:26 pm
by akekorn
ครับผมคือสิ่งที่ผมต้องการคือ หากเปิดform ขึ้นมา หากใส่รหัสพนักงานที่อยู่แล้วข้อมูลในส่วนที่เหลือจะใส้ให้ใน form
แต่หากรหัสพนักงานไม่พบใน form ก็สามารถที่จะบันทึกเพิ่มเข้าไปในฐานข้อมูลต่อไปได้ครับผม

ขอบคุณครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Mon Feb 12, 2018 10:28 pm
by akekorn
แล้วจะนำข้อมูลที่ใส่ใน form มาใส่ไว้ที่sheet1 ช่วง C2:C5 ตามลำดับครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Tue Feb 13, 2018 3:14 pm
by snasui
:D กรุณาลงในรายละเอียด อ่านแล้วไม่เข้าใจว่ากำลังอะไรที่ไหน เช่นใส่ค่าอะไรที่ชีตไหน เซลล์ไหน ต้องการตรวจสอบกับค่าใด ที่ไหน ต้องการแสดงผลที่ไหน อย่างไร ฯลฯ ครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Tue Feb 13, 2018 9:38 pm
by akekorn
ครับผม
คือจากตัวอย่างในsheet1 เมื่อกดปุ่มbutton จะมีform ให้ใส่ข้อมูล ซึ่งหากใส่รหัสที่เคยมีในชีท employee code ที่เขึยนไว้จะนำข้อมูลของกลุ่ม
รหัสพนักงานเช่น ช่ื่อ แผนก เบอร์โทรศัพท์มาใส่ใน form ที่เหลือ จากนั้นจะนำค่าใน form มาใส่ที่ชีท1 cell ที่ hilight สี่เหลืองไว้
แต่ที่ผมต้องการทำเพิ่มคือหากใส่รหัสพนักงานแล้วไม่พบอยากให้ โปรแกรมถามว่าต้องการจะเพ่ิมรหัสใหม่เข้าไปในฐานข้อมูลที่ชีท employee หรือไม่หากต้องการ
เราต้องเติมข้อมูลใน form ที่ทำไว้ และเมื่อกดปุ่ม แล้วจะนำข้อมูลไปไว้ต่อบรรทัดสุดท้ายที่ีชีท employee และ นำข้อมูลที่กรอกใน form มาใส่ที่ sheet1
โดยวางไว้ที่ตำแหน่งที่ hightlight ด้วยครับ
ซึ่งผมได้ลองทำใหม่โดยในช่วงแรกผมสามารถหาขัอมูลที่มีอยู่่ในฐานข้อมูลเดิมคือ ขีท employee และนำข้อมูลที่ใน form มาใส่ที่ sheet1 ได้แต่
ไม่ทราบว่าจะ code อย่างไรใน ตอนที่จะต้องเพิ่มข้อมูลใหม่เข้าไปในฐานข้อมูลเดิมคือต่อบรรทัดสุดท้ายที่ชีท employee และ นำข้อมูลใหม่มาใส่ในsheet1 ครับ
โดยผมได้แนบ file มาอีกครั้งรบกวนคุณคนควนช่วยแนะนำด้วยครับ
ขอบคุณครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Wed Feb 14, 2018 6:00 am
by snasui
:D ตัวอย่างการปรับ Code ครับ

Code: Select all

Dim foundItem As Boolean, rsp As Integer
Application.ScreenUpdating = False
myid = TextBox1.Text
On Error Resume Next
Sheets("employee").Select
If Err > 0 Then Exit Sub
Range("A2").Select
Do While ActiveCell <> ""
    If CDbl(myid) = ActiveCell.Value Then
        'TextBox1.Value = ActiveCell.Offset(0, 0).Value
        TextBox2.Text = ActiveCell.Offset(0, 1).Value
        TextBox3.Text = ActiveCell.Offset(0, 2).Value
        TextBox4.Text = ActiveCell.Offset(0, 3).Value
        Sheet1.Select
        Range("D12").Value = TextBox1.Value
        Range("I12").Value = TextBox4.Value
        Range("D14").Value = TextBox2.Value
        Range("D16").Value = TextBox3.Value
        foundItem = True
        Exit Do
    End If
    ActiveCell.Offset(1, 0).Select
Loop
If Len(TextBox1.Text) = 4 And Not foundItem Then
    rsp = MsgBox(Prompt:="Not found. Add this item click 'Yes'.", Title:="Not found", _
        Buttons:=vbYesNo + vbInformation)
    If rsp = vbYes Then
        '...Other code..
    End If
End If

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Wed Feb 14, 2018 9:52 pm
by akekorn
ขอบคุณคุณคนควนมากคร้บ
ผมได้ปรับ code ตามคำแนะนำแล้วครับ
แต่ผมรบกวนอีก step คือกรณีที่ผมต้องการจะให้ save data ไปที่ชีท employee และนำข้อมูลมาไว้ที่ hightlight สีเหลืองด้วย
ซึ่งผมได้ลองทำดูแต่ผลที่ได้ไม่ตรงกับความต้องการโดยผมได้แนบ codeที่ผมได้ทำเพิ่ม รบกวนขอคำแนะนำคุณคนควนด้วยครับ
ขอบคุณครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Wed Feb 14, 2018 10:35 pm
by snasui
:D ควรเพิ่มปุ่มสำหรับการบันทึกข้อมูลลงชีต employee และเขียน Code ในปุ่มนี้ให้ตรวจสอบว่า Control ต่าง ๆ มีข้อมูลหรือไม่ หากไม่มีให้กรอกข้อมูลใน Control นั้น ๆ ให้ครบถ้วนก่อนที่จะนำข้อมูลไปบันทึกครับ

Re: ขอความช่วยเหลือเรื่องการเขียนโปรแกรม ควบคุม form

Posted: Thu Feb 15, 2018 5:43 pm
by akekorn
ครับผมทำได้แล้วครับขอบคุณมากครับคุณคนควน