اگر تعداد بسیار زیادی کاربرگ در یک ورک بوک دارید، ممکن است بخواهید نام آن کاربرگ ها را بازیابی کنید و سپس در کاربرگ خود قرار دهید. به عنوان مثال، ممکن است آنها را در یک مکان بخواهید تا بتوانید آنها را در فهرست مطالب یا به شکل دیگری استفاده کنید. ماکرو زیر، GetSheets، به سرعت نام کاربرگ ها را در ورک بوک فعلی بازیابی می کند و آنها را در ورک بوک فعلی قرار می دهد، از هر سلولی که در حال حاضر انتخاب شده است شروع شود.
Sub GetSheets()
Dim w As Worksheet
Dim iRow As Integer
Dim iCol As Integer
iRow = Selection.Row
iCol = Selection.Column
For Each w in Worksheets
Cells(iRow, iCol) = w.Name
iRow = iRow + 1
Next w
End Sub
اگر می خواهید یک فهرست واقعی از محتویات ایجاد کنید که در آن نام برگه ها در واقع پیوندهایی به کاربرگ ها هستند، می توانید ماکرو را به روش زیر تغییر دهید:
Sub MakeTOC()
Dim w As Worksheet
Dim iRow As Integer
Dim iCol As Integer
Dim sTemp As String
iRow = Selection.Row
iCol = Selection.Column
For Each w in Worksheets
Cells(iRow, iCol) = w.Name
sTemp = "" & w.Name & "!A1"
ActiveSheet.Hyperlinks.Add Anchor:=Cells(iRow, iCol), _
Address:="", SubAddress:=sTemp, TextToDisplay:=w.Name
iRow = iRow + 1
Next w
End Sub