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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#1
Post
by pimwalan » Tue Jan 22, 2013 12:20 am
ป้อนข้อมูลให้กับเซลล์ต่างๆ แล้วพอต้องการคลิกปุ่ม Clear เพื่อให้เคลียร์ข้อมูลในเซลล์ ถ้าเป็นเซลล์เดียวจะได้ แต่ถ้าผสาน2 เซลล์เป็นเซลล์และอ้างอิงเซลล์ที่ผสาน จะเจอ debug ดังรูปที่คำสั่งดังรูป
ควรแก้ไขอย่างไรคะ
Code: Select all
Sub cleardata()
Sheets("sheet2").Range("b12,d4,g4,i4,k4,m4,d7,g7,i7,k7,m7,p5").ClearContents
End Sub
You do not have the required permissions to view the files attached to this post.
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#2
Post
by joo » Tue Jan 22, 2013 8:29 am
ช่วยแนบไฟล์ตัวอย่างมาด้วยครับ เพื่อนสมาชิกจะได้ช่วยกันทดสอบได้
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#3
Post
by pimwalan » Tue Jan 22, 2013 4:54 pm
ช่วยบอกวิธีแก้ไขด้วยนะคะ ส่งไฟล์ไปให้ดูแล้วคะ
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
#4
Post
by bank9597 » Tue Jan 22, 2013 5:00 pm
pimwalan wrote: ช่วยบอกวิธีแก้ไขด้วยนะคะ ส่งไฟล์ไปให้ดูแล้วคะ
ลองแทนโค๊ดนี้เข้าไปครับ
Code: Select all
Sub cleardata()
Sheets("sheet1").Range("b12:c13,d4,g4,i4,k4,m4,d7,g7,i7,k7,m7").ClearContents
Sheets("sheet2").Range("d4,g4,i4,k4,m4,d7,g7,i7,k7,m7").ClearContents
Worksheets("sheet1").Select
End Sub
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#5
Post
by pimwalan » Tue Jan 22, 2013 5:00 pm
คุณ bank9597 และูผู้รู้ช่วยดูโค้ดให้ด้วยนะคะ
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#6
Post
by pimwalan » Tue Jan 22, 2013 5:06 pm
คุณแบงค์ ค่ะ เจอปัญหาโค้ดเดิม พอดีจะล๊อกเซลล์ทั้งหมด ให้เหลือแค่เวลานับถอยหลัง และก็เซลล์ที่ต้องการป้อนข้อความ แต่พอกดปุ่มเคลียร์ก็เจอ Error ดังรูปคะ พอมีวิธีแก้ไขใหมคะ
ช่วยบอกวิธีแก้ไขด้วยคะ ขอบคุณคะ
You do not have the required permissions to view the files attached to this post.
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#7
Post
by joo » Tue Jan 22, 2013 5:13 pm
ลองปรับโค๊ดที่ปุ่มเคลียร์แบบนี้ดูครับ
Code: Select all
Sub cleardata()
Sheets("Sheet1").Unprotect
Sheets("sheet1").Range("b12:c13,d4,g4,i4,k4,m4,d7,g7,i7,k7,m7").ClearContents
Sheets("sheet2").Range("d4,g4,i4,k4,m4,d7,g7,i7,k7,m7").ClearContents
Worksheets("sheet1").Select
Sheets("Sheet1").Protect
End Sub
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#8
Post
by pimwalan » Tue Jan 22, 2013 5:40 pm
ขอบคุณคะแล้วแก้ไขได้แล้วคะ แต่..
อีกข้อคำถามนะคะ คุณแบงค์และผู้รู้ ไฟล์ที่ส่งไปใหม่คะ
ดิฉันต้องการให้เซลล์ที่ D4 และ D7 ชีทที่ 2 อ้างอิงเซลล์ ที่ D4 และ D7 ของชีทที่ 1 เสมอ(สีเหลือง) หลังจากที่กดปุ่มเคลียร์แล้ว
มันก็ยังสามารถป้อนชื่ออ้างอิงกันได้ ช่นเราเล่นเกม เราก็ป้อนชื่อผู้เล่น แต่เวลาที่เราเคลียร์เพื่อจะเล่นเกมใหม่ มันก็ยังจำค่าที่อ้างอิง
โดยไม่เคลียร์หมด แล้วเวลาเราป้อนชื่อก็สามารถอ้างอิงได้ชีทที่ 1 เซลล์ที่ d4 d7 ได้เสมอคะ
ส่วนตำแหน่งเซลล์ที่ G4 G7 I4 I7 ของชีทที่ 1 และ 2 เวลากดปุ่มเคลียร์ให้ไม่ให้จำค่าของมัน เคลียร์ข้อมูลหมดเลยคะ(สีฟ้า)
ช่วยบอกวิธีการแก้ไขด้วยนะคะ ขอบคุณคะ
You do not have the required permissions to view the files attached to this post.
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#9
Post
by pimwalan » Tue Jan 22, 2013 5:52 pm
ช่วยบอกวิธีการ ด้วยนะคะ
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#10
Post
by pimwalan » Tue Jan 22, 2013 6:02 pm
คุณ joo และคุณ bank ค่ะ ดิฉันลองเขียนโค้ดแบบนี้ แต่ก็ติด Error อีกค่ะ เพราะดิฉันต้องการมันอ้างอิงถึงชีท 1 เสมอ เวลาป้อนค่า
แก้ไขอย่างไรดีคะ
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
#11
Post
by bank9597 » Tue Jan 22, 2013 6:03 pm
ยังไม่เข้าใจครับ โจทย์ยังสับสนครับ
หากจะแค่อ้างอิงเฉยตามที่ถามมา ที่ Sheet2 เซลล์ D4 คีย์ =Sheet1!D4 จะเป็นการอ้างอิงมา แต่หากข้อมูลใน Sheet1!D4 ถูกเคลียร์ออกไป ค่าใน Sheet2 เซลล์ D4 ก็จะหายไปด้วยครับ
หากจะให้มีการจดจำค่า จำเป็นต้องมีการบันทึกข้อมูลเก็บไว้ เช่น ผ่านด่านที่ 1 ไปด่านที่ 2 ค่าของด่านที่ 1 ที่เคยใส่ไว้คืออะไร อย่างนี้เป็นต้น
เมื่อเปลี่ยนคนเล่น ค่าก็จะถูกล้างไปทั้งหมด
อย่างไรก็ตามหากจะทำเช่นนั้น ก็ต้องเขียนโค๊ดมาเองก่อนเสมอครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#12
Post
by bank9597 » Tue Jan 22, 2013 6:09 pm
pimwalan wrote: คุณ joo และคุณ bank ค่ะ ดิฉันลองเขียนโค้ดแบบนี้ แต่ก็ติด Error อีกค่ะ เพราะดิฉันต้องการมันอ้างอิงถึงชีท 1 เสมอ เวลาป้อนค่า
แก้ไขอย่างไรดีคะ
pimwalan wrote: ช่วยบอกวิธีการ ด้วยนะคะ
เมื่อถามแล้ว ควรรอคำตอบจากผู้ตอบก่อน ไม่ถามเรื่อยเปื่อยจนหาข้อผิดพลาดไม่เจอ ผู้ตอบทุกท่านที่เข้ามาดู เขาพยายาช่วยอยู่แล้วครับ แต่ผู้ถามต้องรอ ไม่ว่างานจะด่วนแค่ไหนก็ตามก็มีค่าเท่ากันครับ
หากจะคุยก็สามารถไปคุยได้ที่ Talk ครับ สามารถคุยได้เรื่อยๆทุกเรื่องราวครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#13
Post
by pimwalan » Tue Jan 22, 2013 6:17 pm
คืออย่างนี้คะ เมื่อเราป้อนชื่อผู้เล่น แล้วมันก็อ้างอิงไปยังเซลล์ต่างๆ ของชีทที่ระบุอัตโนมัติอยู่แล้ว นี่ไม่มีปัญหาเลยคะ
แต่พอแบบว่า เราอยากจะสร้างปุ่มหนึ่งปุ่มที่สามารถเคลียร์ข้อมูลเซลล์ต่างๆ ยกเว้นการระบุชื่อผู้เล่นให้อ้างอิงกันเสมอ โดยไม่ต้องกรอกสูตรทุกครั้งเวลาอ้างอิง
ต้องการเคลียร์คนเล่นคนเก่าออก แล้วก็ป้อนผู้เล่นใหม่ นี่ละคะ ทำอย่างไรที่ ค่าของชีท 2 จะจำค่าของผู้เล่นคนใหม่
หรือเราต้องไปกรอกการอ้างอิงเซลล์ชื่อผู้เล่นทุกครั้งคะทุกครั้งคะ
เพราะ ดิฉันเห็นว่าเวลาเล่นเกมใหม่ ก็ต้องกรอกชือ่ผู้เล่นคนใหม่ แล้วก็สามารถอ้ัางอิงชึทต่อไปได้ แต่โจทย์นี้อยากให้ผู้รู้ช่วยดิฉันด้วยคะ
เอาอ้างอิงเฉพาะไฟล์ที่ส่งไปก็ได้คะ
ขอบคุณคะ
bank9597
Guru
Posts: 3868 Joined: Wed Aug 17, 2011 11:49 am
#14
Post
by bank9597 » Tue Jan 22, 2013 6:24 pm
คืออย่างนี้ครับ คุณ pimwalan ควรบอกวิธีการเล่น ส่วนที่ติดปัญหามาด้วย ระบุเจาะจงไปที่ชีทใด เซลล์ใด
ผมอ่านโจทย์แล้ว ยังไม่รู้เลยครับว่าต้องกรอกอะไร ส่วนไหน เพราะไม่มีอธิบายวิธีการไว้เลย
โจทย์คำถามแรกที่คุณ pimwalan ถามมาเป็นตัวอย่างที่ดี คือระบุเป้าหมายชัดเจน แต่คำถามหลังๆมานี้ ผมยังอ่านแล้วสับสนครับ
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
pimwalan
Member
Posts: 25 Joined: Sat Jan 19, 2013 4:06 pm
#15
Post
by pimwalan » Tue Jan 22, 2013 6:35 pm
ขอขอบคุณทุกๆ คำแนะนำ ตอนนี้ถึงบางอ้อแล้วคะ
ดิฉันได้ทำการล๊อกเซลล์ที่ต้องการอ้างอิงในชีทที่กรอกข้อมูลผู้เล่น คะ พอดีเวลามันล๊อกเซลล์ มันก็จะจำผู้เล่นคนใหม่ได้ ดังโปรแกรมคะ
ขออภัยที่ถามคำถามวกวน สับสน ด้วยนะคะ แต่ก็ขอขอบคุณผู้รู้ทุกคนค่ะ
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
#16
Post
by bank9597 » Tue Jan 22, 2013 6:43 pm
Forum Rules
อย่าใช้ภาษาแชทในการตอบ-ถาม
ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ