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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#1
Post
by liveday » Mon May 07, 2018 4:55 pm
สวัสดีครับ อาจารย์ทุกท่าน
จะถามอาจารย์ทุกท่านเกี่ยวการเก็บข้อมูล Text จากที่กล่องกาเครื่องหมายครับ
เราจะต้องเก็บไว้ใน Database อย่างไรได้บ้างครับ
ขอบคุณครับ
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:
#2
Post
by snasui » Mon May 07, 2018 8:11 pm
การจะเก็บได้ก็ต้องตรวจสอบก่อนว่า Obect ใดมีการทำเครื่องหมายเอาไว้
การตรวจสอบการทำเครื่องหมายสามารถนำตัวอย่างสูตรด้านล่างไปใช้ได้ครับ
Code: Select all
If ActiveSheet.Shapes("Check Box 4").OLEFormat.Object.Value = 1 Then
'...Your code
End If
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#3
Post
by liveday » Tue May 08, 2018 11:16 am
การตรวจสอบการทำเครื่องหมายแล้วในขั้นตอนต่อไป เราจะแปลงเป็นข้อความเพื่อไปใส่ใน Database ได้อย่างไรครับ
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 08, 2018 7:39 pm
หาบรรทัดล่าสุดที่ได้มีการวางข้อมูลแล้วนำไปวางยังตำแหน่งเซลล์ที่ต้องการครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#5
Post
by liveday » Thu May 10, 2018 9:37 am
อาจารย์ครับ ผมไม่แนใจว่าทำถูกหรือเปล่านะครับ แล้วในส่วน CheckBox4 กับ CheckBox5 เราสามารถติ้กแค่อันใดอันนึงได้ไหมครับอาจารย์ แบบว่า ถ้าเราติ้ก CheckBox4 แล้ว CheckBox5 จะติ้กไม่ได้ครับ
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 10, 2018 9:19 pm
liveday wrote: Thu May 10, 2018 9:37 am
อาจารย์ครับ ผมไม่แนใจว่าทำถูกหรือเปล่านะครับ แล้วในส่วน CheckBox4 กับ CheckBox5 เราสามารถติ้กแค่อันใดอันนึงได้ไหมครับอาจารย์ แบบว่า ถ้าเราติ้ก CheckBox4 แล้ว CheckBox5 จะติ้กไม่ได้ครับ
กรณีต้องการให้เลือกได้แค่อันใดอันหนึ่งจะใช้ Option และครอบด้วย GroupBox และกำหนดเส้นขอบของ GroupBox ไม่ให้มองเห็นมาช่วยแทนการใช้ CheckBox ครับ
Option ที่อยู่ภายใต้ GroupBox เดียวกันจะได้เลือกได้เพียงอันใดอันหนึ่งครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#7
Post
by liveday » Fri May 11, 2018 4:58 pm
เรียน อาจารย์
ผมได้ปรับ Code ไหม่ครับ โดยการสร้าง Userform แต่ยังไม่สามารถนำข้อความจาก OptionButton มาใส่ที่ Database ครับ
Private Sub OptionButton1_Click()
If ActiveSheet.Shapes("Option Button 1").OLEFormat.Object.Value = 1 Then
Sheets("Default").Range("Q1").Value = "µÃ§"
Else
Sheets("Default").Range("Q1").Value = ""
End If
End Sub
โค้ดนี้ผมเอาไปใส่แล้ว Error เลยไม่แน่ใจว่าต้องปรับโค้ดอย่างไรครับ
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:
#8
Post
by snasui » Fri May 11, 2018 8:06 pm
การวาง Code กรุณาอ่านกฎการใช้บอร์ดข้อ 5 ด้านบน ไม่ใช่ตามลักษณะของโพสต์ #7 ซึ่งเป็น Code แบบ Inline ซึ่งไว้สำหรับการอธิบายครับ
ตัวอย่าง Code ตามด้านล่างครับ
Code: Select all
Dim x As String
Dim y As String
Sub CommandButton3_Click()
If Me.TextBox1.Value <> "" Then
Dim irow As Long
Dim ws As Worksheet
Set ws = Worksheets("Database")
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
ws.Cells(irow, 1).Value = Me.TextBox1.Value
ws.Cells(irow, 2).Value = Me.TextBox2.Value
ws.Cells(irow, 3).Value = Me.TextBox3.Value
ws.Cells(irow, 4).Value = Me.TextBox4.Value
ws.Cells(irow, 7).Value = Me.TextBox5.Value
ws.Cells(irow, 5).Value = x
ws.Cells(irow, 6).Value = y
Me.TextBox1 = ""
Me.TextBox2 = ""
Me.TextBox3 = ""
Me.TextBox4 = ""
Me.TextBox5 = ""
Me.OptionButton1 = ""
Me.OptionButton2 = ""
Else
MsgBox "ÂѧäÁèä´éãÊè¢éÍÁÙÅ", vbCritical
End If
End Sub
Private Sub CommandButton2_Click()
Unload UserForm1
End Sub
Private Sub OptionButton1_Click()
x = OptionButton1.Caption
End Sub
Private Sub OptionButton2_Click()
x = OptionButton2.Caption
End Sub
Private Sub OptionButton3_Click()
x = OptionButton3.Caption
End Sub
Private Sub OptionButton4_Click()
y = OptionButton4.Caption
End Sub
Private Sub OptionButton5_Click()
y = OptionButton5.Caption
End Sub
Private Sub OptionButton6_Click()
y = OptionButton6.Caption
End Sub
Private Sub OptionButton7_Click()
y = OptionButton7.Caption
End Sub
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#9
Post
by liveday » Mon May 14, 2018 4:59 pm
อาจารย์ครับผมติดเรื่อง Date ไม่เรียงตาม Format ที่กำหนดครับ ที่ควรเป็น DD/MM/YYYY และวันที่จะปรับเปลี่ยนจาก พ.ศ ไปเป็น ค.ส.อย่างไรครับ ส่วนข้อมูลถ้าเราใส่แค่วันที่ ก็จะทำให้บันทึกในบรรทัดเดิมครับ จะแก้โค้ดได้อย่างไรครับ ขอบคุณครับ
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:
#10
Post
by snasui » Mon May 14, 2018 5:14 pm
ตามไฟล์แนบได้ปรับ Code ไว้อย่างไรและติดขัดบรรทัดใดช่วยโพสต์แจ้งมาด้วยพอสังเขปครับ
liveday
Bronze
Posts: 286 Joined: Fri Mar 25, 2011 2:24 pm
Excel Ver: 2007
#11
Post
by liveday » Tue May 15, 2018 2:15 pm
Code ที่ใช้
Code: Select all
ws.Cells(irow, 1).Value = Format(Me.TextBox1.Value, "DD/MM/YYYY")ผลที่แสดงออกไปเป็น เดือน/วันที่/ปี
จะปรับยังไงให้เป็น วันที่/เดือน/ปี ครับ
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:
#12
Post
by snasui » Tue May 15, 2018 6:41 pm
ตัวอย่างการปรับ Code ครับ
Code: Select all
ws.Cells(irow, 1).Value = Application.Text(Me.TextBox1.Value, "DD/MM/YYYY")