Page 1 of 3

ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 3:06 pm
by porkub1
เรียน พี่ๆๆ ทุกคนครับ
อยากจะให้ช่วย แก้ไข เพิ่มเติม ไฟล์นี้ โดยคือ
1. Userform ชื่อ "ข้อมูลเบื้องต้น" เมื่อกรอกข้อมูลครบถ้วน แล้ว กด ที่ ปุ่มบันทึก อยากให้ข้อมูลนั้น ไป บันทึกในชีท "บันทึกข้อมูล" เซลล์ B3 ครับ

2. ในชีท แบบสอบถาม จะทำอย่างไรไม่ให้ checkbox ติ๊ก 2 ช่องพร้อมกัน หรือถ้าทำไม่ได้ ขอให้มีกล่องข้อความเตือนว่า อย่าติก 2 ช่องพร้อมกัน
3. ปุ่มยกเลิก จะเป็นการ เคลียร์ข้อมูล ทั้ง การติ๊กในแบบสอบถาม และเคลียร์ ข้อความใน textbox ครับ
4. อยากให้มีกล่องข้อความเตือน ในกรณี "ไม่ได้ติ๊กเลือกคำตอบ" เพราะที่ทำได้จะเป็น เมื่อพิมพ์ข้อความในกล่อง แต่ไม่ได้ติ๊กอะไรเลย ยังสามารถไปข้อต่อไปได้อยู่ อยากให้เตือนด้วยอะครับ

และเมื่อทำแบบสอบถามไปแล้ว มีการบันทึกผล ลงในชีท "บันทึกข้อมูล" เริ่มต้นในเซลล์ B9 ลงไป โดยกำหนด ถ้าติ๊ก ใช่ แสดงค่าเป็น 1 ถ้าติ๊กไม่ แสดงค่าเป็น 0

5.กรณีชีท "แบบสอบถาม"
กรณี เงื่อนไข
ถ้าข้อ 1.3 ติ๊ก ได้ และกรอกข้อความ จะมีข้อความว่า จะไปที่ข้อ 2.1 ในชีท "แบบสอบถามข้อ2"
ถ้า ติ๊ก ไม่ และกรอกข้อความ จะมีข้อความว่า จะไปข้อ 2.2 ในชีท "แบบสอบถามข้อ3"

โดยทั้งหมดบันทึกข้อมูลในชีท " "บันทึกข้อมูล" เสมอ


ขอบคุณมากครับ ผมมือใหม่มากเลย ศึกษาแบบงูๆๆปลาๆๆมาก ขอบคุณมากครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 3:43 pm
by snasui
:D เปลี่ยน CheckBox ให้เป็น Option Button เพื่อจะได้เลือกเพียงอันใดอันหนึ่ง หลังจากเปลี่ยนแล้วแนบไฟล์มาดูกันต่อครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 3:59 pm
by porkub1
ขอบคุณครับพี่ snasui ผมได้ลองเป็น option button แล้ว แต่พอตอบข้อ อื่นๆ ตัวจุดดำที่เลือกไว้มันเลื่อน ไปข้ออื่นๆตาม ครับ ผมเลยลองใช้ checkbox ต้องขอโทษพี่ๆๆด้วยนะครับ ที่อาจจะผิดกฏ ในบอร์ดนี้ ในบางข้อ แต่เจตนาไม่ได้ตั้งใจนะครับ ผมลองเนื่องจากโดนมอบหมายมาอีกที นึงและมีความจำเป็นใช้ด่วนด้วย จากไฟลืดังกล่าว ยอมยินดีให้แก้ไข ชี้แนะ แนะนำได้เลยครับ ไฟล์นี้รวมความรู้ของผมทั้งหมดแล้วอะครับ

งั้นขอแนบมาใหม่นะครับ :flw: :flw: ขอบคุณมากจริงๆๆนะครับ ความรู้เรื่องนี้น้อยมากจริง ขอคำชี้แนะทุกข้อแนะนำเลยครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 4:05 pm
by snasui
:D ใช้ Group Box มาครอบ Option Button ที่เป็นชุดเดียวกัน เพื่อแยกชุดออกจากกันกับชุดอื่น ๆ ครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 4:19 pm
by porkub1
ลองใช้ group box แล้ว ยังเลื่อนอยู่เลยอะครับ อาจารย์ Snasui ผมตั้ง set groupbox อะไรด้วยมั้ยอะครับ
ถ้ารำคาญต้องขอโทษนะครับ เพราะทุกคำแนะนำผมได้จด และนำไปประยุกต์ ต่อๆไป ขอบคุณครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 4:31 pm
by snasui
:D แนบไฟล์ล่าสุดมาดูกันครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 4:37 pm
by porkub1
ครับแนบมาเบื้องต้นครับ กระทู้ผมคงเปลืองเนื้อที่เว็บมากเลย ขออภัยนะครับ ผมรีบใช้จริงก็เลยทำไม่เรียบร้อย เท่าไร อันนี้เหมือนไฟล์ตัวอย่าง เพราะผมจะนำ code ที่ได้ไปใช้ในไฟล์ตัวจริง ครับ :(

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 4:47 pm
by porkub1
ถึงอาจารย์ครับ Option Button ของ form controls จะแบ่งได้ ครับ แต่ที่นี้ Option Button ของผมมีความตั้งใจจะติ๊กแล้วมีกล่องข้อความเตือนขึ้นมาด้วย ไม่ทราบว่า Option Button ของ form controls เมื่อติ๊กจะมีข้อความเตือนขึ้นมายังไงอะครับ ขอบคุณมากครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 5:09 pm
by snasui
:D คุณสามารถถามได้เต็มที่ ไม่ต้องเกรงใจ ผมไม่กลัวเปลืองพื้นที่เว็บ สบายใจได้ ค่อย ๆ ถามตอบกันไปครับ

สำหรับการเขียน Option ให้ใช้ Form Control ผมทำตัวอย่างมาให้ดูตามไฟล์แนลครับ การ Tick แล้วมีข้อความหรืออืืน ๆ ต้องเขียน Code เข้าไปกำกับครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 5:17 pm
by porkub1
ขอบพระคุณมากครับ อาจารย์ SNASUI ผมจะลอง ศึกษาดูครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 5:21 pm
by porkub1
อาราย์ครับ กรณีจะเขียนสูตรใน form controls เป็น code เหมือน activex controls ยังไงอะครับ แล้วจะเขียนได้เหมือนกัน หรือไม่ครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 7:59 pm
by snasui
:D สำหรับการเขียน Code ควบคุม Control จะคล้ายคลึงกัน ลองพยายามศึกษาและเขียนมาเองก่อน ติดตรงไหนสามารถถามมาได้เรื่อย ๆ ใน snasui.com ก็มีให้ศึกษาพอสมควรครับ ตัวอย่างตาม Link นี้ครับ Control

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 8:47 pm
by porkub1
กล่องพอทำได้แล้วครับ เหลือแต่ การดึงข้อมูล ที่ กรอก ไปยัง ชีท "บันทึกข้อมูล" ครับ เพราะตอนนี้ทำได้แต่ดึงใน ชีทเดียวกันครับ ขอรบกวนอาจารย์ ชี้แนะด้วยค้าบ ใกล้สำเร็จ แล้วดีใจมากครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 8:56 pm
by snasui
porkub1 wrote:ขอรบกวนอาจารย์ ชี้แนะด้วยค้าบ
:D อ่านกฎการใช้บอร์ดด้านบนด้วยนะครับ :roll: ไม่อนุญาตให้ใช้ภาษาแชท กรณีที่ผมเตือนบ่อย ๆ จะส่งผลกระทบต่อความเป็นสมาชิกครับ

ควรแนบไฟล์ที่ปรับปรุงมาล่าสุด ชี้ให้เห็นว่าติดที่ Procedure ไหน บรรทัดใด จะได้เข้าถึงปัญหาใดโดยไวครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Tue Feb 11, 2014 9:24 pm
by porkub1
ขออภัยครับ เดี๋ยวผมจะส่งไปให้นะครับ ขอบคุณครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Wed Feb 12, 2014 8:41 am
by porkub1
เพิ่มเติม ครับ อยากจะให้ช่วย ดูให้หน่อยครับ ติดนานมากครับ ไฟล์นี้ โดยคือ
Userform ชื่อ "ข้อมูลเบื้องต้น" เมื่อกรอกข้อมูลครบถ้วน แล้ว กด ที่ ปุ่มบันทึก(CommandButton1) อยากให้ข้อมูลนั้น ไป บันทึกในชีท "บันทึกข้อมูล"(sheet ที่4) เซลล์ B3 ครับ


โค้ดครับ

Code: Select all

Private Sub CommandButton1_Click()

If TextBox1.Value = "" Then
MsgBox ("กรุณากรอกชื่อของท่าน")

ElseIf TextBox2.Value = "" Then
MsgBox ("กรุณากรอกนามสกุลของท่าน")

ElseIf TextBox3.Value = "" Then
MsgBox ("กรุณากรอกหน่วยงาน/ฝ่ายของท่าน")

ElseIf TextBox4.Value = "" Then
MsgBox ("กรุณากรอกชื่อกระบวนการจัดการที่ท่านตอบแบบสอบถาม")
Else:
strvaluemsg = MsgBox("ข้อมูลของท่านได้บันทึกแล้ว เริ่มตอบแบบสอบถาม ขอบคุณ", vbOKOnly + 64, "ขอบคุณ")
Unload Me
End If
End Sub

Private Sub CommandButton2_Click()
Unload Me
End Sub

Private Sub UserForm_Initialize()
With ComboBox1
.AddItem "นาย"
.AddItem "นางสาว"
.AddItem "อื่นๆ"
End With
End Sub

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Wed Feb 12, 2014 10:12 am
by snasui
:D ตัวอย่าง Code ตามด้านล่างครับ

Code: Select all

Private Sub CommandButton1_Click()
    If TextBox1.Value = "" Then
        MsgBox ("กรุณากรอกชื่อของท่าน")
    
    ElseIf TextBox2.Value = "" Then
        MsgBox ("กรุณากรอกนามสกุลของท่าน")
    
    ElseIf TextBox3.Value = "" Then
        MsgBox ("กรุณากรอกหน่วยงาน/ฝ่ายของท่าน")
    
    ElseIf TextBox4.Value = "" Then
        MsgBox ("กรุณากรอกชื่อกระบวนการจัดการที่ท่านตอบแบบสอบถาม")
    Else:
        Sheets("บันทึกข้อมูล").Range("b3") = TextBox1.Value & " " & TextBox2.Value & " " & TextBox3.Value & " " & TextBox4.Value
        strvaluemsg = MsgBox("ข้อมูลของท่านได้บันทึกแล้ว เริ่มตอบแบบสอบถาม ขอบคุณ", vbOKOnly + 64, "ขอบคุณ")
        Unload Me
    End If
End Sub

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Wed Feb 12, 2014 11:23 am
by porkub1
:cp: :cp: ได้แล้วครับอาจารย์
ขออนุญาตเพิ่มเติมครับ

ถ้าจัดเก็บ text box1 ไปจัดเก็บ B3
TextBox2 ไปเก็บ C3
TextBox3 " D3
TextBox4 " E3

รบกวนด้วยนะครับ ขอบคุณ อาจารย์ ครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Wed Feb 12, 2014 11:51 am
by snasui
:D ลองปรับมาเองก่อน ติดแล้วค่อยถามกันต่อครับ

Re: ปัญหาการจัดคำแบบสอบถามใน excel

Posted: Wed Feb 12, 2014 1:03 pm
by porkub1
ได้ครับ จะลองดูก่อนได้ครับ ขอบคุณมากครับ