Page 1 of 1
สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Tue May 27, 2014 3:42 pm
by nilatxay
มืใหม่หัดเลี่มสร้างฟอร์มในexcel
ยากป้อนข้อมูลผ่านฟอร์มในexcel เพื่อสะดวกในการใช้งาน ครับ
แต่ผมยังงงในกานใช้โค้ดอยู่
ต้องการผู้รู้แนนำครับ
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Tue May 27, 2014 3:50 pm
by Totem
nilatxay wrote:มืใหม่หัดเลี่มสร้างฟอร์มในexcel
ยากป้อนข้อมูลผ่านฟอร์มในexcel เพื่อสะดวกในการใช้งาน ครับ
แต่ผมยังงงในกานใช้โค้ดอยู่
ต้องการผู้รู้แนนำครับ

หากเป็นการเขียน VBA ให้ลองเขียนเองก่อน ตาม กฎข้อ 5 ครับ
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Tue May 27, 2014 5:21 pm
by nilatxay
ผมสร้างโคดมาแล้วครับ
รบกวนท่านปรับโค้ดให้หน่อยครับ
1 Date ต้องการเป็นรูปแบบวันที
2 Class, Module, Teacher, Status ให้บันดาช่องนี้ขื้นค่าตามที่เราได้กำนดไว้ใน sheet Code โดยที่เราไม่ต้องพีม
3 ID No. กำนดเป็นตัวเลกที่พีมได้
4 ผมต้องการให้ Date Class, Module, Teacher พีมครั้งเดียว แล้วเพี่มเพียงแต่ ID No. Status ไปได้หลายฯครั้ง
เพาะว่านักเรียนที่เข้ามาเรียนหลายคน ใน Date Class, Module, Teacher เป็นอันเดียวกัน
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Tue May 27, 2014 8:36 pm
by snasui

ค่อย ๆ ถามตอบกันไปครับ
ข้อ 1 ให้คีย์วันที่เป็น dd/mm/yyyy หากต้องการนอกเหนือจากนั้นให้เขียนมาเองก่อน
ข้อ 2 ให้ใช้ ComboBox แทน TextBox แล้วค่อย Loop เพื่อ Add รายการตามต้องการ
ข้อ 3 ที่ทำมาเป็นตัวเลขอยู่แล้ว
ข้อ 4 สามารถทำเช่นนั้นโดยลบบรรทัด Unload Me ทิ้งไป
ลองทำมาเองตามด้านบน ติดตรงไหนค่อยถามกันต่อ
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 10:32 am
by nilatxay
สองข้อนี้ผมทำได้แล้วครับ
ข้อ 2 ให้ใช้ ComboBox แทน TextBox แล้วค่อย Loop เพื่อ Add รายการตามต้องการ
ข้อ 3 ที่ทำมาเป็นตัวเลขอยู่แล้ว
ยังสองข้อครับ
ข้อ 1 ผมต้องการให้วันทีมันขื้นมาเองตามวันที่เราป้อนข้อมูล
ข้อ 4 ผมต้องการ Date, Class, Module, Teacher copy ข้อมูลลงไปตามเลก ID กับ tatus ที่เราได้ป้อนลง
โดยเราไม้ต้องป้อนข้อมูล Date, Class, Module, Teache ไปที่ละคน
มืใหม่หัดใช้ VB
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 11:02 am
by snasui
nilatxay wrote:ข้อ 1 ผมต้องการให้วันทีมันขื้นมาเองตามวันที่เราป้อนข้อมูล

ต้องการให้ขึ้นมาแบบไหน อย่างไร ช่วยอธิบายหรือจับภาพมาแสดง Code ทีเขียนไว้เองแล้วในการจัดการกับวันที่ตามคำถามนี้คือบรรทัดไหน
ตัวอย่าง Code ตามข้อ 4 ครับ
Code: Select all
Private Sub Save_Click()
Dim irow As Long
Dim ws As Worksheet
Dim objAll As Variant
Dim i As Integer
Set ws = Worksheets("Tracking")
objAll = Array(Me.TextBox4, Me.TextBox5, Me.TextBox6, Me.TextBox7, Me.TextBox8)
If Me.TextBox1.Value <> "" Then
Me.TextBox1.Text = Application.Trim(Me.TextBox1.Text)
'Find first empty row in database
irow = ws.Cells(Rows.Count, 2) _
.End(xlUp).Offset(1, 0).Row
'Copy The Data To The Database
For i = 0 To UBound(objAll)
If objAll(i).Text <> "" Then
ws.Cells(irow, 2).Value = Me.TextBox1.Value
ws.Cells(irow, 3).Value = Me.ComboBox1.Value
ws.Cells(irow, 4).Value = Me.ComboBox2.Value
ws.Cells(irow, 5).Value = objAll(i).Value
ws.Cells(irow, 6).Value = Me.ComboBox3.Value
ws.Cells(irow, 7).Value = Me.ComboBox4.Value
irow = irow + 1
End If
Next i
Else
MsgBox "Please check Data", vbCritical
End If
End Sub
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 11:20 am
by nilatxay
ข้อ4ได้แล้วครับ
ยังข้อ 1 คืในส่วนของ Date ผมต้องการให้ขื้น Auto วันที่ในคอมเลียครับ (แต่สามารถแปลงได้)
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 1:02 pm
by nilatxay
ช่วยกวดโคดดูให้อีกครั้งครับ
เวลาป้อนข้อมูลลงไปแล้วเมื่อกด ปุ่ม SAVE
มันลงไปในตาลางที่กำนดไว้
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 2:18 pm
by bank9597

ลองสร้างชีท template ขึ้นมาครับ ไว้สำหรับจัดเรียงข้อมูลให้เรียบร้อยก่อน แล้วค่อยสั่งบันทึกไปที่ตารางในตอนหลัง แบบนี้จะง่ายกว่าครับ
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 2:21 pm
by niwat2811
Code: Select all
objAll = Array(Me.TextBox4, Me.TextBox5, Me.TextBox6, Me.TextBox7, Me.TextBox8)
คุณ nilatxay ผมลองโหลดไฟล์ที่แนบมาแล้ว ดู Code ตรง objAll รู้สึกว่าจะตกตัว j ไปตัวนะครับ
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 2:28 pm
by nilatxay
OK แก้ไขได้แล้วครับ
ยังแค่ข้อเดียวครับ
ในตาลาง Form Date ผมต้องการให้ขื้น Auto วันที่ในคอมเลียครับ (แต่สามารถแปลงได้)
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 2:45 pm
by niwat2811
ตรง Private Sub UserForm_Initialize() ลองเพิ่ม Code นี้เข้าไปครับ
Re: สร้างแบบฟอร์ม ป้อนข้อ ในexcel
Posted: Thu May 29, 2014 3:52 pm
by nilatxay
ได้แล้ว
ขอบคุณครับ
