Page 1 of 1
อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Wed Jul 11, 2012 12:07 am
by nuch chompoo
อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Wed Jul 11, 2012 7:22 am
by Tawat
ก็ยัง งง กับคำถามนะครับ
เท่าที่เข้าใจนะ คิดว่าเป็นการนำ Sheet1 , sheet2 แยกออกไปเป็น File Excel ใหม่ใช่หรือไม่ครับ
ถ้าใช่แบบบนี้ให้คลิกขวาที่ ชื่อ sheet นั้นๆ แล้วเลือกคำสั่ง move or copy ครับ
แล้วเลือกหัวข้อด้านบนสุดเป็น new book ครับ มันก็สามารถแยกไปเป็น file excel ใหม่ได้อีก 1 ไฟล์
แต่ถ้าไม่ใช่ก็รบกวนอธิบายความต้องการด้วยครับ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Wed Jul 11, 2012 10:35 pm
by nuch chompoo
ใช่เลยค่ะ คุณธวัช แต่ตอนนี้ มีเป็น 30 worksheet เลยค่ะ มีวิิธีอื่นอีกไหมคะ ขอบคุณล่วงหน้าค่ะ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Wed Jul 11, 2012 11:14 pm
by bank9597
nuch chompoo wrote:ใช่เลยค่ะ คุณธวัช แต่ตอนนี้ มีเป็น 30 worksheet เลยค่ะ มีวิิธีอื่นอีกไหมคะ ขอบคุณล่วงหน้าค่ะ
หากเป็นวิธีอื่นที่รวดเร็วกว่าต้องอาศัย VBA ช่วยครับ แต่จำเป็นต้องเขียนมาเองก่อนเสมอ ติดตรงไหนค่อยแก้ไปเรื่อยๆครับ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Thu Jul 12, 2012 8:06 am
by Tawat
ต้องถามว่าใช้ Macro เป็นรึเปล่าอะครับ
และก็ชื่อ sheet ใน ไฟล์ของคุณเป็นยังไง รบกวนส่งตัวอย่างมาด้วยครับ
ส่วน Macro แบบมั่วๆที่ผมทดลองทำก็ช่วยได้นิดหน่อยนะครับ
ถ้าแก้ไขนิดหน่อยได้ก็จะช่วยได้เหมือนกันครับ
การเขียนก็ประมาณนี้นะครับ
Sub test()
Dim n As Integer
For n = 1 To 2
Windows("book1").Activate
ActiveSheet.Select
ActiveSheet.Move
Next n
End Sub
ถ้าไม่เข้าใจก็สอบถามได้นะครับ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Thu Jul 12, 2012 9:14 am
by snasui
Tawat wrote:ต้องถามว่าใช้ Macro เป็นรึเปล่าอะครับ
....
การเขียนก็ประมาณนี้นะครับ
Sub test()
Dim n As Integer
For n = 1 To 2
Windows("book1").Activate
ActiveSheet.Select
ActiveSheet.Move
Next n
End Sub
ถ้าไม่เข้าใจก็สอบถามได้นะครับ
คุณ Tawat สามารถปรับ Code ให้แสดงเป็น Code ตาม Link นี้ เพื่อให้ง่ายต่อการอ่านครับ
viewtopic.php?f=3&t=1187
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Sat Jul 14, 2012 7:20 am
by nuch chompoo
เขียนไม่เป็นค่ะ คุณธวัช แต่อยากลองเหมือนกัน คุณธวัชแนะนำหนังสือเล่มไหนดีคะ จากโค้ดที่คุณธวัชให้มา มันขึ้น error ว่า move method of worksheet ค่ะ
ตัวอย่างก็ง่ายๆ คุณธวัชช่วยเปิด 3 worksheet ค่ะ เดี๋ยวลอง test ของคุณธวัชอีกทีนะคะ กำลังคือว่า ค่า n คือ จำนวน worksheet รึเปล่าค่ะ
ขอบคุณมากๆเลยค่ะ
คุณธวัช
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Sat Jul 14, 2012 8:02 am
by Tawat
ค่า n คือจำนวน Worksheet ครับ
ส่วน Windows("book1").Activate
คือ ชื่อของ file ที่คุณใช้ครับ เปลี่ยนชื่อให้ตรงกับชื่อไฟล์ของคุณก็น่าจะได้แล้วนะ
ส่วนผมศึกษาจากคนรอบข้างครับ และก็จาก Webboard นี้แหละครับ
ส่วนพวกโค้ด ผมจะใช้โค้ดเขียนคล้ายๆกับ excel เพื่อให้เข้าใจได้ง่าย
และที่ง่ายที่สุดคือผมใช้วิธี macro record แล้วอ่าน Code ที่ record มาได้ครับ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Sat Jul 14, 2012 10:18 am
by snasui
สามารถปรับ Code เป็นตามด้านล่างเพื่อแยกแต่ละชีทออกเป็นไฟล์ใหม่
Code: Select all
Sub test()
Dim n As Integer
For n = 1 To Sheets.Count - 1
Windows("Test111.xlsm").Activate
ActiveSheet.Select
ActiveSheet.Move
Next n
End Sub
การใช้ VBA จำเป็นต้องปรับปรุงแก้ไขเองได้บ้าง หากยังไม่เคยใช้ต้องศึกษามาก่อนเป็นลำดับ ติดขัดตรงไหนค่อยมาถามกันครับ
Re: อยากแยกแต่ละ worksheet ใน excel ออกเป็นแต่ละไฟล์ค่ะ
Posted: Sat Jul 14, 2012 2:01 pm
by Tawat
snasui wrote: สามารถปรับ Code เป็นตามด้านล่างเพื่อแยกแต่ละชีทออกเป็นไฟล์ใหม่
Code: Select all
Sub test()
Dim n As Integer
For n = 1 To Sheets.Count - 1
Windows("Test111.xlsm").Activate
ActiveSheet.Select
ActiveSheet.Move
Next n
End Sub
การใช้ VBA จำเป็นต้องปรับปรุงแก้ไขเองได้บ้าง หากยังไม่เคยใช้ต้องศึกษามาก่อนเป็นลำดับ ติดขัดตรงไหนค่อยมาถามกันครับ
ขอบคุณมากเลยครับอาจารย์
เพราะผมยังคิดไม่ออกเลยว่าจะทำยังไง ถ้าไม่นับจำนวน Sheet
ได้ความรู้เพิ่มเติมขึ้นอีกครับ