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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Naikalonll
Member
Posts: 16 Joined: Thu Jan 23, 2014 2:27 am
#1
Post
by Naikalonll » Thu Jan 23, 2014 5:42 pm
มีส่วนการกรอกข้อมูลอยู่ส่วนหนึ่ง ทำโดย CheckBox ถ้าเลือกถูกให้ไปขึ้นเลขหนึ่งอีกชีท ทำ CheckBox เรียงลงมา10 อัน ทำไป 5 แถว เพื่อเป็นฐานข้อมูล
แล้ว อัดมาโคร ก๊อบปี้แถวเพิ่ม ปัญหาคือ จะแก้ไขฐานข้อมูลเก่าไม่ได้ ถ้าไม่เพิ่มแถวก่อน ต้องเขียนโค้ดยังไงให้ แก้ไขข้อมูลพื้นฐานได้แล้วค่อยเพิ่มแถวแล้วแก้ไขได้โดยการกดบันทึกครั้งเดียว
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#2
Post
by joo » Thu Jan 23, 2014 7:34 pm
แนบไฟล์พร้อมอธิบายปัญหาและยกตัวอย่างมาด้วยครับ
Naikalonll
Member
Posts: 16 Joined: Thu Jan 23, 2014 2:27 am
#3
Post
by Naikalonll » Sun Jan 26, 2014 1:48 am
1.ต้องการปรับเปลี่ยนฐานข้อมูลเดิม แค่ให้เลือกใช้เครื่่องหมายถูกแล้วให้ไปบันทึกข้อมูลใน sheet1
2.สามารถเพิ่มข้อมูลโดยผ่านเครื่องมายบวกได้ และให้เพิ่ม cell ใน sheet 1 และสามารถเปลี่ยนแปลงข้อมูลได้ โดยผ่านปุ่มบันทึกข้อมูลเดียวกัน
รบกวนช่วยหน่อยนะคะ
You do not have the required permissions to view the files attached to this post.
Naikalonll
Member
Posts: 16 Joined: Thu Jan 23, 2014 2:27 am
#4
Post
by Naikalonll » Sun Jan 26, 2014 1:52 am
help.rar
joo wrote: แนบไฟล์พร้อมอธิบายปัญหาและยกตัวอย่างมาด้วยครับ
1.ต้องการปรับเปลี่ยนฐานข้อมูลเดิม แค่ให้เลือกใช้เครื่่องหมายถูกแล้วให้ไปบันทึกข้อมูลใน sheet1
2.สามารถเพิ่มข้อมูลโดยผ่านเครื่องมายบวกได้ และให้เพิ่ม cell ใน sheet 1 และสามารถเปลี่ยนแปลงข้อมูลได้ โดยผ่านปุ่มบันทึกข้อมูลเดียวกัน
รบกวนช่วยหน่อยนะคะ
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:
#5
Post
by snasui » Sun Jan 26, 2014 8:30 am
ลองตามนี้ครับ
ลบ CheckBox ที่ Sheet2 เดิมออกทั้งหมด
คลุมพื้นที่ที่ต้องการสร้าง CheckBox
Run Code ตามด้านล่าง
Code: Select all
Sub test()
Dim rAll As Range
Dim r As Range
Dim obj As Object
With Sheets("Sheet2")
Set rAll = Selection
End With
For Each r In rAll
Set obj = ActiveSheet.CheckBoxes.Add(r.Left, r.Top, 24, 17.25)
With obj
.LinkedCell = r.Address
.Characters.Text = ""
.Top = r.Top + r.Height / 2 - obj.Height / 2
.Left = r.Left + r.Width / 2 - obj.Width / 2
End With
Next r
End Sub
ปรับ Font ใน Sheet2 ตรง CheckBox ให้เป็นสีพื้น
ที่ Sheet1 เซลล์ B3 คีย์
=Sheet2!C3+0
Enter > Copy ไปด้านขวาและลงด้านล่าง
ทดสอบเลือก CheckBox ใน Sheet2 แล้วสังเกตดูผล
snasui
Site Admin
Posts: 31257 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#7
Post
by snasui » Mon Jan 27, 2014 12:53 pm
Naikalonll wrote: ขอบคุณค่าเด่ว จะลองทำตามดูนะคะ
อ่านกฎทุกข้อด้านบน
และปฏิบัติตามด้วยครับ
Naikalonll
Member
Posts: 16 Joined: Thu Jan 23, 2014 2:27 am
#8
Post
by Naikalonll » Tue Jan 28, 2014 6:32 pm
snasui wrote: Naikalonll wrote: ขอบคุณค่าเด่ว จะลองทำตามดูนะคะ
อ่านกฎทุกข้อด้านบน
และปฏิบัติตามด้วยครับ
คำสั่งเก่าทำได้แล้วค่า
ต่อไปอยากจะให้กดปุ่มเพื่อเพิ่มข้อมูลได้อีกหลายคอลัม แล้วไปเพิ่มฐานข้อมูลในชีท1ด้วยค่ะ (สามารถเพิ่มเติมข้อมูลได้)
ช่วยหน่อยนะคะ
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:
#9
Post
by snasui » Tue Jan 28, 2014 8:49 pm
Naikalonll wrote: คำสั่งเก่าทำได้แล้วค่า
ถ้าเขียนคำว่า "ค่า" แทน "ค่ะ" มาอีกรอบโดนแบนนะครับ ขอให้เขียนแก้ไขข้อความเดิมให้ถูกต้องก่อนครับ
Naikalonll
Member
Posts: 16 Joined: Thu Jan 23, 2014 2:27 am
#10
Post
by Naikalonll » Wed Jan 29, 2014 12:20 am
snasui wrote: Naikalonll wrote: คำสั่งเก่าทำได้แล้วค่า
ถ้าเขียนคำว่า "ค่า" แทน "ค่ะ" มาอีกรอบโดนแบนนะครับ ขอให้เขียนแก้ไขข้อความเดิมให้ถูกต้องก่อนครับ
ขอโทษค่ะ
คำสั่งเก่าทำได้แล้วค่ะ
ต่อไปอยากจะให้กดปุ่มเพื่อเพิ่มข้อมูลได้อีกหลายคอลัม แล้วไปเพิ่มฐานข้อมูลในชีท1ด้วยค่ะ (สามารถเพิ่มเติมข้อมูลได้)
ช่วยหน่อยนะคะ
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:
#11
Post
by snasui » Wed Jan 29, 2014 2:01 pm
Code ต้องเขียนมาเอง ติดตรงไหนแล้วค่อยถามกันตามกฎการใช้บอร์ดข้อ 5 ด้านบน
ที่ผมเขียนไปให้ด้านบนเพราะถือว่าได้พยายามเขียนมาเองแล้ว
สิ่งที่ต้องการจะทำตามที่ถามมานั้นไม่ได้ถือว่าเป็นเรื่องยากเพราะว่าใช้ Code ที่ผมเขียนไว้มาช่วยได้ในกรณีเป็นเพิ่ม CheckBox ใน Sheet2
Naikalonll
Member
Posts: 16 Joined: Thu Jan 23, 2014 2:27 am
#12
Post
by Naikalonll » Thu Feb 13, 2014 5:05 pm
ลองเขียนดูแล้วค่ะ แต่ตัวเลข 0 ,1 ในชีท2 ที่คำสั่งจาก check box ยังเปลี่ยนไม่ได้ค่ะ
1.ต้องการแทรกแถว แล้วให้มี Check Box แล้ว ถ้า Check True =1 , Check False =0 ใน ชีทที่2
2.ต้องการให้แทรกแถวได้ตลอดค่ะ
3. ติดปัญหาตรงที่ยัง เปลี่ยนเป็นเลข 0,1
ในชีท2 ไม่ได้ค่ะ
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:
#13
Post
by snasui » Thu Feb 13, 2014 6:09 pm
ที่เปลียนค่าจาก False เป็น 0 และ True เป็น 1 ไม่ได้เพราะเขียนสูตรผิดครับ
ใน Sheet2 เซลล์ E1 จะใช้สูตร
=Sheet
2 !E1+0
ไม่ได้ครับ เป็นการอ้างเซลล์ของตัวเอง
สูตรควรเป็น
=Sheet
1 !E1+0
ส่วนการแทรกแถว สามารถลบ CheckBox ทุกอันทิ้งไปก่อนแล้วสร้างใหม่ทั้งหมดด้วย Code เดิมทีผมเขียนไว้ให้
เราสามารถคลุมพื้นที่ที่ต้องการแล้วค่อย Run Code ไม่ได้เป็นการกำหนดพื้นที่ที่ไว้ล่วงหน้า จะเลือกสร้างที่เซลล์ไหน เว้นหรือไม่เว้นบรรทัดก็ย่อมได้