Page 1 of 1
การสร้าง Checkbox ใน excel
Posted: Sat Oct 31, 2015 12:49 am
by sutham
ขอรบกวนคำแนะนำในการสร้าง Checkbox ใน excel ครับ
คือ ต้องการสร้าง checkbox ใน excel จำนวนมากผมใช้วิธีการ copy แต่จะต้องมานั่งกำหนดเซลล์เชื่อมโยงในแต่ละอัน อยากทราบว่าจะมีวิธีที่เมื่อ copy แล้วจะให้เซลล์เชื่อมโยงเปลี่ยนไปด้วยจะได้หรือไม่ครับ (เพราะต้องสร้างจำนวนมากมากกว่า 100)
รบกวนขอคำแนะนำด้วยครับ
Re: การสร้าง Checkbox ใน excel
Posted: Sat Oct 31, 2015 6:02 am
by snasui

การทำเช่นนั้นต้องอาศัย VBA ครับ
ในเบื้องต้นให้เขียน Macro สำหรับการการ Copy เซลล์แล้ว Loop ไปยัง CheckBox แต่ละตัวให้ได้ก่อน ในลำดับถัดมาค่อยกำหนด CheckBox แต่ละตัวให้สัมพันธ์กับเซลล์ที่ต้องการแสดงผล ซึ่งต้องเขียนมาเองก่อน ติดตรงไหนค่อยถามกันต่อครับ
Re: การสร้าง Checkbox ใน excel
Posted: Sat Oct 31, 2015 6:54 pm
by sutham
ตอนนี้ผมแนวทางและประยุกต์ใช้ได้แล้วครับ
แต่ปัญหาใหม่ก็เกิดขึ้นอีกแล้วครับ
คือผมได้เขียน code ในการใส่ข้อมูลในคอลัมน์ D (ตามไฟล์แนบ) โดยเลือกจากปุ่มที่ผมสร้างขึ้นทางขวามือปุ่มที่ 1 - 6
ประเด็นที่ผมของการขอคำแนะนำและช่วยเหลือ คือ เมือผมกดปุ่มที่ 6 ซึ่งไม่มีข้อมูลอยู่ในคอลัมน์ B จึงทำให้โปรแกรมค้างไปเลย
จึงอยากขอวามช่วยเหลือในการเพิ่มเติมและแก้ไข code ใน vba โดย code ที่ผมใช้กับปุ่มที่ 6 คือ
Code: Select all
Sub room_66()
Range("b4").Select
Do While Selection.Value <> "6" 'แก้เลข
Selection.Offset(1, 0).Select
Loop
Selection.Offset(0, 2).FormulaR1C1 = "=IF(RC[-2]=6,TRUE,"""")" 'แก้เลข
Selection.Offset(1, 0).Select
If Selection.Value = "6" Then 'แก้เลข
Do While Selection.Value = "6" 'แก้เลข
Selection.Offset(0, 2).FormulaR1C1 = "=IF(RC[-2]=6,TRUE,"""")" 'แก้เลข
Selection.Offset(1, 0).Select
Loop
Else
Exit Sub
End If
Range("b2").Select
End Sub
ขอบคุณครับ

Re: การสร้าง Checkbox ใน excel
Posted: Sat Oct 31, 2015 10:57 pm
by snasui

ตัวอย่าง Code การออกจาก Loop ครับ
Code: Select all
Do While Selection.Value <> "6" 'á¡éàÅ¢
Selection.Offset(1, 0).Select
If Selection.Value = "" Then Exit Do
Loop