1Click Macro : สร้างหน้า Index Link ข้อมูลไปแต่ละชีท อัตโนมัติ

วิธีเพิ่มเมนู Developer ให้กับ Excel : https://youtu.be/TL66up0Ihzw

บันทึกมาโครลง Personal Macro Workbook เรียกใช้ codeได้ไม่ต้องเขียนใหม่ : https://youtu.be/iOMppHDsuO0


VBA Code

Sub CreateIndex()

Dim last_row, item_no As Integer
Dim myCell As Range
Dim ws As Worksheet
Dim index_ws As Worksheet
     

    Set index_ws = ThisWorkbook.Sheets("Index")
    Set myCell = ActiveCell

    item_no = 1
     
    With index_ws
         
        myCell.Value = "Item"
        myCell.Offset(0, 1).Value = "SheetName"
        last_row = myCell.Row + 1
          
        For Each ws In ThisWorkbook.Sheets
            If ws.Name <> .Name Then
                .Cells(last_row, myCell.Column).Value = item_no
                .Hyperlinks.Add Cells(last_row, myCell.Column + 1), "", _
                    "'" & ws.Name & "'!A1", , ws.Name
                item_no = item_no + 1
                last_row = last_row + 1
            End If
        Next ws
         

    End With
    
    Cells.EntireColumn.AutoFit ' autofit column
End Sub


ไฟล์สำหรับบทความนี้ : กดที่นี่เพื่อดาวน์โหลด

Leave a Reply