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]
เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Benmore
Bronze
Posts: 254 Joined: Tue Sep 05, 2017 9:51 am
#21
Post
by Benmore » Sat Dec 09, 2017 3:45 pm
ลบข้อมูลที่ต้องการได้แล้วค่ะ แต่ทำไมพอลบข้อมูลสุดท้ายแล้วจะมีข้อมูลของคอลลัมน์อื่นมาแทนที่ค่ะ
เช่น ลบไซส์เสื้อ SSP(FF) แล้ว ไซส์กางเกง 32" ก็จะมาแทนที่ค่ะ ทุกข้อมูลที่อยู่ข้างๆกันก็จะมาแทนที่เรื่อยๆค่ะ เพราะอะไรค่ะ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 30744 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#22
Post
by snasui » Sat Dec 09, 2017 4:10 pm
การลบแล้วข้อมูลอื่นมาแทนแสดงว่าเป็นการลบแล้วให้ Shift ไปทางใดทางหนึ่ง กรณีลบแล้วต้องการให้ Shift ขึ้นด้านบนลองบันทึัก Macro แล้วดู Code และนำมาปรับใช้ดูก่อน ติดแล้วค่อยถามกันครับ
snasui
Site Admin
Posts: 30744 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#24
Post
by snasui » Sat Dec 09, 2017 4:39 pm
เคยบันทึก Macro หรือไม่ครับ
Benmore
Bronze
Posts: 254 Joined: Tue Sep 05, 2017 9:51 am
#25
Post
by Benmore » Sat Dec 09, 2017 4:45 pm
snasui wrote: เคยบันทึก Macro หรือไม่ครับ
ไม่เคยค่ะ
snasui
Site Admin
Posts: 30744 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#26
Post
by snasui » Sat Dec 09, 2017 4:52 pm
ดูคลิปด้านล่างนี้แล้วลองทดสอบการบันทึก Macro การลบข้อมูล โดยเตรียมข้อมูลให้คล้าย ๆ กับงานจริง เมื่อกดบันทึก Macro แล้วให้คลิกขวาในเซลล์ข้อมูลแล้วเลือก Delete > เลือกตัวเลือกที่ต้องการ > สังเกต Code ที่ได้แล้วนำมาปรับใช้ครับ
wordpress/professional-macro-recording/
เบื้องต้นให้ดูคลิปแรกก่อน การเรียนรู้ VBA ได้รวดเร็วทางหนึ่งคือการบันทึก Macro แล้วดู Code แล้วปรับใช้ครับ
Benmore
Bronze
Posts: 254 Joined: Tue Sep 05, 2017 9:51 am
#27
Post
by Benmore » Sat Dec 09, 2017 4:57 pm
ลองทำตามที่ค้นหาข้อมูลดูแล้ว ขึ้นแบบนี้ใน module
Code: Select all
Sub My_First_Macro()
'
' My_First_Macro Macro
'
' Keyboard Shortcut: Ctrl+a
'
Range("A1").Select
Selection.Copy
Range("B1").Select
ActiveSheet.Paste
End Sub
คืออะไรค่ะ
snasui
Site Admin
Posts: 30744 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:
#28
Post
by snasui » Sat Dec 09, 2017 5:22 pm
ถ้าดูคลิปที่ผมให้ Link ไปจะทราบครับ
โปรดทราบว่าผมจะไม่แปล Code ที่ได้จากการบันทึก Macro เหตุผลเพราะต้องทราบเองว่าได้กระทำอะไรไปกับหน้าจอ จึงไม่ควรเกิดคำถามลักษณะนี้
สิ่งที่ผมต้องการจะสื่อคือ ให้ลองบันทึก Macro การลบข้อมูลที่เป็นการลบเองด้วยมือ ไม่ใช่บันทึก Macro การ Run Code ลบข้อมูล จากนั้นสังเกต Code ที่ได้ นำ Code นั้นมาปรับใช้กับการทำงาน ทำตรงนี้มาก่อน ติดแล้วค่อยถามครับ