snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
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] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#21
Post
by skantima » Sat Mar 19, 2011 1:32 pm
ลองทำ protection แล้ว ไม่สำเร็จค่ะ
ทำตามนี้น่ะค่ะ
1. unlocked พื้นที่ๆ จะให้ front หรือ cashier แก้ไขได้ โดย format cells > protection
2. tool > protection > users to edit ranges > New > title = front, refer to cells = $A$A, กรอก password > OK
** พอใช้งาน เลือกไม่ได้เลยทั้ง column และแก้ไขไม่ได้แม้ใส่รหัสแล้ว **
3. protect sheets OK
4. share workbook OK
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#22
Post
by snasui » Sat Mar 19, 2011 2:19 pm
skantima wrote: ลองทำ protection แล้ว ไม่สำเร็จค่ะ
ทำตามนี้น่ะค่ะ
1. unlocked พื้นที่ๆ จะให้ front หรือ cashier แก้ไขได้ โดย format cells > protection
ทำยังไม่ครบครับ อ่านที่นี่อีกรอบครับ
ตอนแรก เป็นการดำเนินการของ Front ซึ่งจะอนุญาตให้กรอกเฉพาะบางพื้นที่ เราสามารถใช้การ Protect เข้ามาช่วยสำหรับงานนี้ครับ แต่ก่อนที่จะ Protect เราจะต้องปลด Locked เซลล์ ที่จะให้ Front แก้ไขได้เสียก่อนครับ โดยให้ทำดังนี้ครับ
1. คลุมพื้นที่ที่ให้ Front แก้ไขได้
2. คลิกขวา > เลือก Format Cells
3. ที่แถบ Protection > ให้ทำการปลดเครื่องหมายที่ Lock > OK
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#23
Post
by skantima » Sat Mar 19, 2011 3:15 pm
drag mouse พื้นที่ click ขวา > format cells > protection > เอากากบาทออกจากคำว่า locked แล้วด้วยค่ะ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#24
Post
by snasui » Sat Mar 19, 2011 3:23 pm
ส่งไฟล์
ตัวอย่าง ที่ลองทำแล้วมาดู จะได้เห็นว่าทำอะไรไปบ้างครับ
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#25
Post
by skantima » Sat Mar 19, 2011 3:24 pm
ไฟล์ที่ทำแล้วขนาด 1.2MB อ่ะค่ะ พยายามลบข้อมูลออก ก็ไม่เล็กลงค่ะ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#26
Post
by snasui » Sat Mar 19, 2011 3:31 pm
สงสัยต้องแก้ที่ตัวอย่างให้เล็กลงก่อนครับ
ไม่ทราบว่าตัวอย่างมีกี่ชีทครับ และแต่ละชีทมีข้อมูลกี่บรรทัดครับ ตัวอย่างควรจะเป็นข้อมูลเพียงไม่กี่บรรทัดเท่านั้นนะครับ
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#27
Post
by skantima » Sat Mar 19, 2011 3:40 pm
เกรงใจอาจารย์ค่ะ พอดีเครื่องใช้งานจริงอยู่ด้วย และเครื่องเข้าเนตไม่ได้
ขออภัยจริงๆ ค่ะ ไม่ทราบว่าอ. สะดวกให้คำปรึกษาทางโทรศัพท์มั๊ยคะ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#28
Post
by snasui » Sat Mar 19, 2011 3:45 pm
ถ้าปรึกษาทางโทรศัพท์จะทำให้เพื่อน ๆ ที่คอยติดตามก็ไม่ทราบข้อมูลที่ต่อเนื่อง ผมตั้งฟอรั่มมาเพื่อให้ถามตอบกัน ดังนั้น เมื่อใช้ Excel แล้วติดขัดตรงไหน ถามได้ทุกคำถามไม่ต้องออม ไม่ต้องกังวล ไม่ต้องเกรงใจ สะดวกเมื่อไรก็ถามครับ
joo
Gold
Posts: 1213 Joined: Sat Apr 17, 2010 3:50 pm
#29
Post
by joo » Sat Mar 19, 2011 8:09 pm
ผมทำตัวอย่างการล็อคไว้ลองประยุกต์ดูครับ
You do not have the required permissions to view the files attached to this post.
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#30
Post
by skantima » Sun Mar 20, 2011 10:40 am
ล๊อคคอลัมน์
ล็อค worksheet
Share workbook ได้แล้วค่ะ
แต่ติดตรงที่จะลบแถวออกเวลา checkout ไม่ได้ เพราะล๊อคคอลัมน์ไว้
จะทำอย่างไร เพื่อให้ห้องที่ checkout แล้ว ไปเก็บอีก sheet
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#31
Post
by snasui » Sun Mar 20, 2011 1:33 pm
ถ้าจะให้ลบได้ก็ต้องปลด Locked คอลัมน์หรือแถวนั้น ๆ ด้วยครับ
การจะให้ไปเก็บอีกชีทได้ต้องใช้ VBA จะต้องเห็นข้อมูลว่าอยู่ไฟล์ใด ชีทใด เซลล์ใดถึงจะแนะนำได้ครับ
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#32
Post
by skantima » Sun Mar 20, 2011 3:50 pm
ทำตัวอย่าง sheet อื่นๆ มาให้ดูค่ะ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#33
Post
by snasui » Sun Mar 20, 2011 4:00 pm
แก้ปัญหาด้านล่างนี้เรื่องการลบแถวได้แล้วยังครับ
skantima wrote: ล๊อคคอลัมน์
ล็อค worksheet
Share workbook ได้แล้วค่ะ
แต่ติดตรงที่จะลบแถวออกเวลา checkout ไม่ได้ เพราะล๊อคคอลัมน์ไว้
จะทำอย่างไร เพื่อให้ห้องที่ checkout แล้ว ไปเก็บอีก sheet
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#34
Post
by skantima » Sun Mar 20, 2011 5:28 pm
snasui wrote: ถ้าจะให้ลบได้ก็ต้องปลด Locked คอลัมน์หรือแถวนั้น ๆ ด้วยครับ
การจะให้ไปเก็บอีกชีทได้ต้องใช้ VBA จะต้องเห็นข้อมูลว่าอยู่ไฟล์ใด ชีทใด เซลล์ใดถึงจะแนะนำได้ครับ
พอดีเมื่อกี้ยืมเครื่องอื่นรีบทำไฟล์ส่งให้อาจารย์ดูน่ะค่ะ ก็เลยยังไม่ได้ทดลองปลดล๊อคแถว และตอนนี้ทดลองไม่ได้อีก เพราะเครื่องนี้เป็นแมค ใช้ฟังก์ชั่นแบบพีซีไม่ได้
แต่ก็ยังไม่เลิกพยายามนะคะ ขอถามเพิ่มว่า
เมื่อล๊อคชีทได้เหมือนไฟล์ที่อาจารย์ทำตัวอย่างให้ได้แล้ว ต่อไป...
การปลดล๊อคแถวนั้นๆ ต้องทำทุกครั้งที่ต้องการลบ โดยการยกเลิกการป้องกัน sheet (protection - unprotect worksheet - ใส่ password) โดยผู้ทำการป้องกัน worksheet เลยใช่ไหม หากใช่ก็ให้ผู้ใช้ทั่วไปทำไมได้สิคะ (ผู้ใช้ไม่มีความรู้ excel เลยค่ะ)
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#35
Post
by snasui » Sun Mar 20, 2011 5:44 pm
skantima wrote: ขอถามเพิ่มว่า
เมื่อล๊อคชีทได้เหมือนไฟล์ที่อาจารย์ทำตัวอย่างให้ได้แล้ว ต่อไป...
การปลดล๊อคแถวนั้นๆ ต้องทำทุกครั้งที่ต้องการลบ โดยการยกเลิกการป้องกัน sheet (protection - unprotect worksheet - ใส่ password) โดยผู้ทำการป้องกัน worksheet เลยใช่ไหม หากใช่ก็ให้ผู้ใช้ทั่วไปทำไมได้สิคะ (ผู้ใช้ไม่มีความรู้ excel เลยค่ะ)
การลบนั้นทำโดยใครครับ หากเป็นหน่วยงานอื่นที่มีหน้าที่ลบโดยเฉพาะก็สามารถใช้การป้องกันในลักษณะที่อนุญาตให้ทำงานได้โดยต้องระบุรหัส (Allow Edit Ranges) ถ้าจะลบหรือแก้ไขใด ๆ ก็ต้องกรอกรหัสก่อนครับ การ Allow Edit Ranges สามารถกำหนดไว้กี่ Range ก็ได้ ใครมีหน้าทีใดก็ทำเฉพาะของตัวเองครับ
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#36
Post
by skantima » Sun Mar 20, 2011 6:18 pm
ในความเป็นจริง ต้องให้แคชเชียร์เป็นผู้ลบ หากเราทำ Allow Edit Ranges เราก็ต้องปลด locked ตอน format cells ทั้งชิ้นงานใช่มั๊ยคะ เพราะการลบต้องทำได้ทั้งหมดทั้งชีทอยู่แล้ว ... ซับซ้อนขึ้นเรื่อยๆ เลย ... หรือว่า เปลี่ยนวิธีการทำเช็คเอ้าท์โดยให้แคชเชียร์ทำเครื่องหมายที่คอลัมน์ใดๆ แล้วค่อยให้คนอื่นๆ ที่ไม่ใช่ทั้ง front และแคชเชียร์ลบทีหลัง ...
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#37
Post
by snasui » Sun Mar 20, 2011 7:11 pm
ผู้ที่สามารถลบข้อมูลทั้งชีทได้ต้องมี Password ของการ Protect Worksheet ไม่เช่นนั้นก็ทำไม่ได้ครับ เรื่องกระบวนการทำงานผมคงช่วยอะไรไม่ได้มาก เพราะไม่ทราบกระบวนการทำงานทั้งหมด
จากที่อ่านมาในตอนแรก ๆ ดูเหมือนไม่มีอะไรซับซ้อนมากมาย แค่อนุญาตให้บางหน่วยงานคีย์ข้อมูลของตัวเอง โดยมีการ Share File นำข้อมูลที่เลือกแล้วไปสั่งพิมพ์แต่ละรายการ ซึ่งการทำเช่นนี้ไม่ได้ยากอะไร เพียงแต่ต้องอาศัย VBA เข้ามาช่วย
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#38
Post
by skantima » Sun Mar 20, 2011 7:17 pm
อาจารย์คะ
เอาเป็นว่าขอปรับเปลี่ยนวิธีทำ checkout เป็นมาร์คเครื่องหมายให้รู้ว่า ห้องใด checkout ไปแล้ว และดิฉันค่อยลบแถวออกเอง ขอข้ามเป็นขั้นต่อไปนะคะ
1. สามารถให้เครื่องป้อนวันเวลาปัจจุบันอัตโนมัติ เมื่อ cursor ผ่าน cell นั้นๆ ได้หรือไม่ โดยไม่เปลี่ยนแปลงเป็นวันเวลาใหม่เมื่อเปิดไฟล์ใหม่ อย่างไร
2. วิธีการสั่งพิมพ์เอกสารส่งราชการและบิล แบบที่ทำนั้น พอไหวมั๊ย คือใช้ = เพื่ออ้างถึงเซลล์
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#39
Post
by snasui » Sun Mar 20, 2011 7:24 pm
ขอตอบตามด้านล่างครับ
1. ช่วยระบุตำแหน่งมาด้วยครับว่าต้องการให้แสดงวันที่ที่ชีทไหน เซลล์ไหน แค่เมาส์วิ่งผ่านแล้วให้คีย์วันที่นั้นทำไม่ได้ครับ ควรจะต้องมีการคลิกเซลล์ใด ๆ เช่นคลิกเซลล์ A1 แล้วให้เกิดวันที่ในเซลล์ A1 อย่างนี้เป็นต้น
2. การพิมพ์เอกสารที่ทำสูตรเพื่อ Link เซลล์มานั้นใช้ได้เพียงส่วนหนึ่งครับ จะต้องทำต่อเพื่อให้พิมพ์อัตโนมัติทุกใบทีเลือกมาแล้ว
skantima
Member
Posts: 30 Joined: Wed Mar 16, 2011 1:25 pm
#40
Post
by skantima » Sun Mar 20, 2011 7:29 pm
ข้อ 1
จะเพิ่มคอลัมน์ ถัดจากหมายเลขห้อง สำหรับมาร์คเครื่องหมายว่าเช็คเอ้าท์
เพิ่มคอลัมน์ถัดจากวันที่ IN เป็น TIME
ข้อ 2 ยังไม่เข้าใจค่ะ