Page 1 of 1

ข้อความใน txtbox เวลาพิมพ์ใน USERFORM ไม่อยู่ในบรรทัดเดียวกั

Posted: Wed Jun 29, 2011 11:52 pm
by panida
สวัสดีค่ะอาจารย์ดีสบายดีมั้ยคะ

ดิฉันมีปัญหาในการทำ VB อยากกรบกวนให้อาจารย์ช่วยค่ะ

1.ข้อความใน txtbox เวลาพิมพ์ใน USERFORM ไม่อยู่ในบรรทัดเดียวกันค่ะ
(โพสต์รูปไว้ในไฟล์แล้วค่ะ) สามารถทำให้เวลาพิมพ์มันอยู่ในกรอบ txtbox ได้มั้ยคะ

2.ค่าใน combobox คือรหัสสินค้า
ดิฉันเขียน VB แล้วเพื่อนำค่ารหัสสินค้าจาก sheet Goods มาใส่ใน combobox
คือบางทีเราพิมค่าใน cmbobox ที่ไม่มีอยู่ใน sheet Good มันก็ทำงานตามปกติ
ถ้าเราต้องการใส่ค่าได้แค่ที่มีอยู่ใน combobox เท่านั้น ใส่ค่าอื่นลงไปจะไม่รับ
สามารถทำได้มั้ยคะ

3.ดิฉันจะทำ VLOOKUP
จากการใส่รหัสสินค้า จากใน USERFORM แล้วเขียน VBA VLOOKUP
ค่าในD3 และ F3 คือ ชื่อสินค้า และชื่อลูกค้า ตามลำดับ
โดยไม่ต้องพิมสูตร VLOOKUP ลงไปตรงๆใน cell ได้มั้ยคะ

ขอบคุณอาจารย์มากๆค่ะ
ขอให้อาจารย์มีความสุขและสุขภาพแข็งแรงๆนะคะ
พนิดาค่ะ

Re: ข้อความใน txtbox เวลาพิมพ์ใน USERFORM ไม่อยู่ในบรรทัดเดี

Posted: Thu Jun 30, 2011 7:11 am
by snasui
panida wrote:1.ข้อความใน txtbox เวลาพิมพ์ใน USERFORM ไม่อยู่ในบรรทัดเดียวกันค่ะ
(โพสต์รูปไว้ในไฟล์แล้วค่ะ) สามารถทำให้เวลาพิมพ์มันอยู่ในกรอบ txtbox ได้มั้ยคะ
ปรับ Code เดิมเป็นตามด้านล่างครับ

Code: Select all

Private Sub UserForm_Initialize()
Sheets("Goods").Select
Range("B3").Select
    Do While Not IsEmpty(ActiveCell.Value)
        cmbGoods.AddItem ActiveCell.Value
        ActiveCell.Offset(1, 0).Select
    Loop
    cmbGoods.ListIndex = 0
    txtComment.MultiLine = True 'Add this line
    Sheets("page").Select
End Sub
เพิ่ม Code ด้านล่างเข้าไปช่วยตรวจสอบครับ

Code: Select all

Private Sub cmbGoods_AfterUpdate()
Dim i As Integer, count As Integer
For i = 1 To cmbGoods.ListCount
    If cmbGoods.Column(0, i - 1) = cmbGoods.Text Then
        count = count + 1
    End If
Next
    If count = 0 Then
        MsgBox "Not found"
        cmbGoods = ""
    End If
End Sub
panida wrote: 3.ดิฉันจะทำ VLOOKUP
จากการใส่รหัสสินค้า จากใน USERFORM แล้วเขียน VBA VLOOKUP
ค่าในD3 และ F3 คือ ชื่อสินค้า และชื่อลูกค้า ตามลำดับ
โดยไม่ต้องพิมสูตร VLOOKUP ลงไปตรงๆใน cell ได้มั้ยคะ
ปรับ Code เดิมเป็นตามด้านล่างครับ

Code: Select all

Private Sub cmdOK_Click()
Sheets("page").Select
Range("B3").Select
ActiveCell.Value = cmbGoods.Value
Range("D3").Value = Application.VLookup(Range("B3"), _
    Worksheets("Goods").Range("B3:D12"), 2, 0)
Range("F3").Value = Application.VLookup(Range("B3"), _
    Worksheets("Goods").Range("B3:D12"), 3, 0)
Range("H3").Select
ActiveCell.Value = txtComment.Value
End Sub

Re: ข้อความใน txtbox เวลาพิมพ์ใน USERFORM ไม่อยู่ในบรรทัดเดี

Posted: Thu Jun 30, 2011 8:07 am
by panida
ขอบพระคุณอาจารย์มากๆค่ะ
ขอบคุณอีกที
พนิดา