snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#1
Post
by nilatxay » Tue May 27, 2014 3:42 pm
มืใหม่หัดเลี่มสร้างฟอร์มในexcel
ยากป้อนข้อมูลผ่านฟอร์มในexcel เพื่อสะดวกในการใช้งาน ครับ
แต่ผมยังงงในกานใช้โค้ดอยู่
ต้องการผู้รู้แนนำครับ
You do not have the required permissions to view the files attached to this post.
Totem
Silver
Posts: 650 Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007
#2
Post
by Totem » Tue May 27, 2014 3:50 pm
nilatxay wrote: มืใหม่หัดเลี่มสร้างฟอร์มในexcel
ยากป้อนข้อมูลผ่านฟอร์มในexcel เพื่อสะดวกในการใช้งาน ครับ
แต่ผมยังงงในกานใช้โค้ดอยู่
ต้องการผู้รู้แนนำครับ
หากเป็นการเขียน VBA ให้ลองเขียนเองก่อน ตาม กฎข้อ 5 ครับ
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#3
Post
by nilatxay » Tue May 27, 2014 5:21 pm
ผมสร้างโคดมาแล้วครับ
รบกวนท่านปรับโค้ดให้หน่อยครับ
1 Date ต้องการเป็นรูปแบบวันที
2 Class, Module, Teacher, Status ให้บันดาช่องนี้ขื้นค่าตามที่เราได้กำนดไว้ใน sheet Code โดยที่เราไม่ต้องพีม
3 ID No. กำนดเป็นตัวเลกที่พีมได้
4 ผมต้องการให้ Date Class, Module, Teacher พีมครั้งเดียว แล้วเพี่มเพียงแต่ ID No. Status ไปได้หลายฯครั้ง
เพาะว่านักเรียนที่เข้ามาเรียนหลายคน ใน Date Class, Module, Teacher เป็นอันเดียวกัน
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31257 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#4
Post
by snasui » Tue May 27, 2014 8:36 pm
ค่อย ๆ ถามตอบกันไปครับ
ข้อ 1 ให้คีย์วันที่เป็น dd/mm/yyyy หากต้องการนอกเหนือจากนั้นให้เขียนมาเองก่อน
ข้อ 2 ให้ใช้ ComboBox แทน TextBox แล้วค่อย Loop เพื่อ Add รายการตามต้องการ
ข้อ 3 ที่ทำมาเป็นตัวเลขอยู่แล้ว
ข้อ 4 สามารถทำเช่นนั้นโดยลบบรรทัด Unload Me ทิ้งไป
ลองทำมาเองตามด้านบน ติดตรงไหนค่อยถามกันต่อ
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#5
Post
by nilatxay » Thu May 29, 2014 10:32 am
สองข้อนี้ผมทำได้แล้วครับ
ข้อ 2 ให้ใช้ ComboBox แทน TextBox แล้วค่อย Loop เพื่อ Add รายการตามต้องการ
ข้อ 3 ที่ทำมาเป็นตัวเลขอยู่แล้ว
ยังสองข้อครับ
ข้อ 1 ผมต้องการให้วันทีมันขื้นมาเองตามวันที่เราป้อนข้อมูล
ข้อ 4 ผมต้องการ Date, Class, Module, Teacher copy ข้อมูลลงไปตามเลก ID กับ tatus ที่เราได้ป้อนลง
โดยเราไม้ต้องป้อนข้อมูล Date, Class, Module, Teache ไปที่ละคน
มืใหม่หัดใช้ VB
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31257 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#6
Post
by snasui » Thu May 29, 2014 11:02 am
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
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#7
Post
by nilatxay » Thu May 29, 2014 11:20 am
ข้อ4ได้แล้วครับ
ยังข้อ 1 คืในส่วนของ Date ผมต้องการให้ขื้น Auto วันที่ในคอมเลียครับ (แต่สามารถแปลงได้)
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#8
Post
by nilatxay » Thu May 29, 2014 1:02 pm
ช่วยกวดโคดดูให้อีกครั้งครับ
เวลาป้อนข้อมูลลงไปแล้วเมื่อกด ปุ่ม SAVE
มันลงไปในตาลางที่กำนดไว้
You do not have the required permissions to view the files attached to this post.
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#9
Post
by bank9597 » Thu May 29, 2014 2:18 pm
ลองสร้างชีท template ขึ้นมาครับ ไว้สำหรับจัดเรียงข้อมูลให้เรียบร้อยก่อน แล้วค่อยสั่งบันทึกไปที่ตารางในตอนหลัง แบบนี้จะง่ายกว่าครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
niwat2811
Bronze
Posts: 350 Joined: Thu Jan 06, 2011 12:51 pm
Excel Ver: 2016
#10
Post
by niwat2811 » Thu May 29, 2014 2:21 pm
Code: Select all
objAll = Array(Me.TextBox4, Me.TextBox5, Me.TextBox6, Me.TextBox7, Me.TextBox8)
คุณ nilatxay ผมลองโหลดไฟล์ที่แนบมาแล้ว ดู Code ตรง objAll รู้สึกว่าจะตกตัว j ไปตัวนะครับ
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#11
Post
by nilatxay » Thu May 29, 2014 2:28 pm
OK แก้ไขได้แล้วครับ
ยังแค่ข้อเดียวครับ
ในตาลาง Form Date ผมต้องการให้ขื้น Auto วันที่ในคอมเลียครับ (แต่สามารถแปลงได้)
niwat2811
Bronze
Posts: 350 Joined: Thu Jan 06, 2011 12:51 pm
Excel Ver: 2016
#12
Post
by niwat2811 » Thu May 29, 2014 2:45 pm
ตรง Private Sub UserForm_Initialize() ลองเพิ่ม Code นี้เข้าไปครับ
nilatxay
Member
Posts: 81 Joined: Wed Mar 27, 2013 2:51 pm
#13
Post
by nilatxay » Thu May 29, 2014 3:52 pm
ได้แล้ว
ขอบคุณครับ