RSS

การเพิ่ม Sheet อัตโนมัติตามรายชื่อที่ให้ไว้ล่วงหน้าด้วย VBA

31 Dec

ในบางงานเราอาจจำเป็นต้องเพิ่มชีทหลาย ๆ ชีท และต้องการให้ชื่อชีทเป็นชื่อที่เรากำหนดไว้แล้วล่วงหน้า การทำเช่นนี้หากทำด้วย Manual จะใช้เวลามาก แต่หากใช้ VBA มาช่วยจะลดเวลาได้มากมายครับ ซึ่งจะขอยกตัวอย่างการใช้ VBA ในการเพิ่มชีทตามด้านล่าง แต่ต้องเตรียมข้อมูลชื่อชีทไว้ก่อนล่วงหน้า โดยมีวิธีการดังนี้คือ

  1. เพิ่มชีทใหม่มา 1 ชีทโดยให้ชื่อว่า Sheet1 > Copy รายชื่อมาวางโดยเริ่มที่เซลล์ A1
  2. จากนั้นเปิดหน้าต่าง VBE โดยการกดแป้น Alt+F11 > เข้าเมนู Insert > Module แล้วนำ Code ด้านล่างไปวาง

    Sub AddWorkSheets() 
    Dim i As Long
    Dim r As Range
    On Error Resume Next
    With Worksheets("Sheet1")
    Set r = .Range("A1", .Range("A65536").End(xlUp))
    End With
    For i = 1 To r.Count
    Worksheets.Add(After:=Worksheets(Worksheets.Count)) _
    .Name = r.Cells(i, 1).Value
    Next i
    End Sub

  3. เมื่อต้องการ Run Code กดแป้น Alt+F8 > เลือก AddWorkSheets > Run
 
Leave a comment

Posted by on 31/12/2012 in Sheet

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: