Получение имен рабочих листов (Microsoft Excel)
Если у вас очень большое количество листов в книге, вы можете получить имена этих листов и поместить их на отдельный лист. Например, вы можете захотеть, чтобы они были в одном месте, чтобы вы могли использовать их в оглавлении или каким-либо другим способом. Следующий макрос, 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
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (11679) применим к Microsoft Excel 2007, 2010, 2013 и 2016.
Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Retrieving_Worksheet_Names [Получение имен рабочих листов]
.