Page 1 of 1

ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 11:45 am
by ploynattharat
ขออนุญาตสอบถามผู้รู้คะ

ที่userform ชื่อ InputOrderItem จะมีให้คลิกเลือกชื่อผลิตภัณฑ์ 5 ช่อง เมื่อคลิกเลือกแล้ว ราคาของผลิตภัณฑ์นั้นจะขึ้นมา แต่ปัญหาเกิดขึ้นที่ว่า หากแถวไหนเลือกชื่อผลิตภัณฑ์แล้ว ไม่ใส่จำนวน หรือวันกำหนดส่งด้วย ยังสามารถบันทึกข้อมูลไปsheet ชื่อ Orderได้ คืออยากให้ถ้าไม่ใส่จำนวน หรือวันกำหนดส่ง อยากให้ขึ้นว่า กรอกข้อมูลไม่ครบ แล้วเมื่อเติมข้อมูลให้ครบเฉพาะช่องที่เลือกผลิตภัณฑ์ จึงจะบันทึกไปยัง sheet orderได้

ขอความกรุณาช่วยเหลือด้วยนะคะ

ขอบคุณมากคะ

Re: ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 1:10 pm
by snasui
:D ตัวอย่าง Code สำหรับการตรวจสอบ Control ว่าต้องไม่เป็นค่าว่างครับ

Code: Select all

'Other code
If cbbName1 <> "" Then
    If TextBoxSum1 = "" Or TextBoxDeli1 = "" Then
        MsgBox "กรอกข้อมูลไม่ครบ"
        Exit Sub
    End If
End If

If cbbName2 <> "" Then
    If TextBoxSum2 = "" Or TextBoxDeli2 = "" Then
        MsgBox "กรอกข้อมูลไม่ครบ"
        Exit Sub
    End If
End If
'...
'Other code

Re: ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 1:49 pm
by ploynattharat
snasui wrote::D ตัวอย่าง Code สำหรับการตรวจสอบ Control ว่าต้องไม่เป็นค่าว่างครับ

Code: Select all

'Other code
If cbbName1 <> "" Then
    If TextBoxSum1 = "" Or TextBoxDeli1 = "" Then
        MsgBox "กรอกข้อมูลไม่ครบ"
        Exit Sub
    End If
End If

If cbbName2 <> "" Then
    If TextBoxSum2 = "" Or TextBoxDeli2 = "" Then
        MsgBox "กรอกข้อมูลไม่ครบ"
        Exit Sub
    End If
End If
'...
'Other code
ขอบคุณมากคะ

Re: ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 3:56 pm
by ploynattharat
ploynattharat wrote:
snasui wrote::D ตัวอย่าง Code สำหรับการตรวจสอบ Control ว่าต้องไม่เป็นค่าว่างครับ

Code: Select all

'Other code
If cbbName1 <> "" Then
    If TextBoxSum1 = "" Or TextBoxDeli1 = "" Then
        MsgBox "กรอกข้อมูลไม่ครบ"
        Exit Sub
    End If
End If

If cbbName2 <> "" Then
    If TextBoxSum2 = "" Or TextBoxDeli2 = "" Then
        MsgBox "กรอกข้อมูลไม่ครบ"
        Exit Sub
    End If
End If
'...
'Other code
ขอถามอีกคำถามคะ ในเลือกชื่อผลิตภัณฑ์มี 5 comboboxคะ สมมติ combobox อันแรก ดิฉันเลือกชื่อ Neckring1 พอดิฉันเลือกชื่อผลิตภัณฑ์อันที่2 ชื่อ Neckring1 เหมือนกัน หลังจากกดบันทึก ให้ขึ้น MsgBox "ห้ามเลือกชื่อผลิตภัณฑ์ซ้ำ" แล้วให้เลือกชื่อผลิตภัณฑ์อีกครั้งโดยห้ามเลือกชื่อซ้ำกัน แล้วบันทึกได้ ต้องใส่Code อย่างไรหรอคะ

ขอบคุณมากคะ

Re: ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 5:15 pm
by snasui
:D ลองปรับ Code มาเองก่อน ติดแล้วค่อยถามกันต่อครับ

Re: ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 7:54 pm
by ploynattharat
snasui wrote::D ลองปรับ Code มาเองก่อน ติดแล้วค่อยถามกันต่อครับ

ตามไฟล์ที่แนบให้นะคะ

ดิฉันลองใส่codeแล้วคะ พอเปิดฟอร์ม InputOrderItem ลองคลิกเลือกชื่อผลิตภัณฑ์ ที่ชื่อไม่ซ้ำกัน พอกดบันทึก msgbox เตือนขึ้นว่า "ชื่อผลิตภัณฑ์ซ้ำ" อยู่เลยคะ ลองคลิกเลือกผลิตภัณฑ์อีกครั้ง msgbox ยังขึ้นว่า "ชื่อผลิตภัณฑ์ซ้ำ" อยู่ตลอดเลยคะ

รบกวนอาจารย์ช่วยดูcodeให้ด้วยนะคะ

ขอบคุณมากคะ

Re: ข้อความเตือนให้กรอกข้อมูล ให้ครบ

Posted: Thu May 28, 2015 9:11 pm
by snasui
:D ตัวอย่าง Code ครับ

Code: Select all

Private Sub CommandButton1_Click()
    Dim c As New Collection
    Dim ct As Control
    Sheet1.Activate
    Cells(13, 5).Value = "รายละเอียด"
    Cells(13, 6).Value = "จำนวน"
    Cells(13, 7).Value = "ราคา"
    
    On Error Resume Next
    For Each ct In InputOrderItem.Controls
        If VBA.Left(ct.Name, 3) = "cbb" Then
            c.Add ct.Text, ct.Text
        End If
    Next ct
    If c.Count < 5 Then
        MsgBox "ซ้ำ"
    End If
    'Other code
End Sub