Note: The other languages of the website are Google-translated. Back to English
Войти  \/ 
x
or
x
Регистрация  \/ 
x

or

Как ссылаться на рабочий лист по номеру индекса вместо имени в Excel?

Многие пользователи Excel обычно переименовывают имя рабочего листа по умолчанию в нужное. Но во многих случаях им нужно ссылаться на рабочий лист на основе его порядкового номера, а не настоящего имени. Как этого добиться? Вы можете попробовать метод в статье.

Справочный лист по номеру индекса вместо имени с пользовательской функцией


Справочный лист по номеру индекса вместо имени с пользовательской функцией


Чтобы ссылаться на рабочий лист по порядковому номеру, а не по имени в Excel, сделайте следующее.

1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.

2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > модуль. Затем скопируйте и вставьте приведенный ниже код VBA в окно модуля.

Код VBA: справочный лист по номеру индекса в Excel

Function SHEETNAME(number As Long) As String
    SHEETNAME = Sheets(number).Name
End Function

3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

Заметки:

1. Если вам нужно указать имя определенного листа с его номером, выберите пустую ячейку и введите формулу. = ИМЯ ЛИСТА (1) прямо в панель формул, затем нажмите клавишу Enter. Смотрите скриншот:

2. Если вы хотите получить значение ячейки из рабочего листа на основе его порядкового номера, используйте эту формулу.

=INDIRECT("'"&SHEETNAME(1) &"'!A1")

3. И если вы хотите суммировать определенный столбец на листе на основе его порядкового номера, примените эту формулу.

=SUM(INDIRECT("'"&SHEETNAME(1) &"'!C2:C7"))


Статьи по теме:


Лучшие инструменты для работы в офисе

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Более 300 мощных функций. Поддерживает Office / Excel 2007-2019 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
вкладка kte 201905

Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Jork · 6 months ago
    If you use this UDF, I'd suggest Making two changes in bold below, with notes on why.

    Function SHEETNAME(number As Long) As String
    Application.Volatile <--------- this makes the function recalculate when you change the sheets name. Otherwise when you change the sheet name it doesn't change unless you perform a manual recalculation.----------
    SHEETNAME = Thisworkbook.Sheets(number).Name <------ If you use this function in multiple workbooks, it will only check names of the workbook the function is in. Otherwise this function will potentially call the tab names from other open Workbooks with this formula.-------
    End Function
  • To post as a guest, your comment is unpublished.
    Kjeld · 4 years ago
    Nice solution.
    Also, referencing cell B4 of the first sheet in another Excel file can be done like this:
    =INDIRECT("'[other_filename.xlsx]"&SHEETNAME(1) &"'!B4")

    However note that the file containing the VBA script needs to be stored as a macro file, .xlsm

    Cheers,