помогите переименовать лист с помощью макроса
есть кнопка, при нажатии на которую должен создаваться новый лист,переименовываться и т.д.
Макрос записывался мышкой:добавляю новый лист, на котором сначала появляется имя Лист3, нажимаю на него и переименовываю..
в VBA это выглядит так:
Sheets.Add
Sheets(«Лист3»).Select
Sheets(«Лист3»).Name = «Отчет на 2008 год»
..
Потом чтобы проверить правильность, я удаляю созданный мной лист, и запускаю макрос. Программа прерывается на строке Sheets(«Лист3»).Select, потому что добавленному листу программа дала начальное имя Лист4, а не Лист3.. при следующей попытке уже Лист5.
можно ли выделить и переименовать лист без указания его нынешнего имени? или добавить лист уже с заданным именем? или считать в какую-нибудь переменную имя этого листа.
Пошаговое переименование листа Excel с содержимым ячейки с помощью макроса
Эта статья была написана Раддини Рахаю, Microsoft MVP.
Ситуация
Ниже представлены еженедельные отчеты о продажах. Например, в этом случае 15 человек. Нэнси, администратор отчетов, назначается суммирование всех данных о продажах в один файл, где все продажи разделяются на каждом листе. Чтобы легко упорядочить данные, каждый лист Нэнси дал имя, соответствующее названию продаж на этом листе. Сначала Нэнси чувствует себя комфортно с этим, но по мере того как больше данных и требует быстрой обработки, Нэнси была настолько перегружена. Чтобы устранить эту проблему, Нэнси хочет, чтобы листы имен автоматически изменялись в соответствии с названием продаж на каждом листе, не переименовывая их вручную.

Решения
Лучшие решения для решения проблемы Нэнси — использование макросов. Этот макрос предназначен для каждого листа в этом файле независимо от количества листов. Имя каждого листа будет меняться в соответствии с именем продаж, которое было определено в одном и том же расположении на каждом листе.
Выполнение
Первый шаг

- Проектирование форматов отчетов и указание расположения ячейки, в которой будет размещено название продаж. В этом случае расположение находится в ячейке J2. Этот формат отчета должен быть одинаковым на каждом листе.
- Оставьте имена листов по умолчанию (Лист1, Лист2, Лист3 и т. д.).
Последний шаг
Шаг написания макросов
После того как мы узнаем расположение ячейки, в которой будет размещено название продаж, мы можем перейти к следующему шагу, кодированию макросов.

- На вкладке Разработчик выберите Visual Basic в категории Code или нажмите сочетание клавиш ALT+F11 на клавиатуре, чтобы отобразить окно Visual Basic.
- В области задач проекта щелкните (Имя книги), а затем в меню Вставка выберите Модуль и напишите следующий скрипт:
Sub RenameSheet() Dim rs As Worksheet For Each rs In Sheets rs.Name = rs.Range("B5") Next rs End Sub

Вот и все. Надеюсь, полезно.
Заявление об отказе от ответственности за сведения о продуктах сторонних производителей
В этой статье упомянуты программные продукты независимых производителей. Корпорация Майкрософт не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.
Как переименовать лист в excel макрос
Доброго всем дня!
Суть проблемы. Есть папка, в ней 100 файлов с разными названиями, в файлах по одному листу, названия листов в каждом файле различное. Надо, чтобы названия листов в каждом файле было одинаковое, конкретно tmpQuery1.
Помогите, пожалуйста. Просто таких папок довольно большое количество.
Спасибо.
Доброго всем дня!
Суть проблемы. Есть папка, в ней 100 файлов с разными названиями, в файлах по одному листу, названия листов в каждом файле различное. Надо, чтобы названия листов в каждом файле было одинаковое, конкретно tmpQuery1.
Помогите, пожалуйста. Просто таких папок довольно большое количество.
Спасибо. Fairuza
Сообщение Доброго всем дня!
Суть проблемы. Есть папка, в ней 100 файлов с разными названиями, в файлах по одному листу, названия листов в каждом файле различное. Надо, чтобы названия листов в каждом файле было одинаковое, конкретно tmpQuery1.
Помогите, пожалуйста. Просто таких папок довольно большое количество.
Спасибо. Автор — Fairuza
Дата добавления — 13.09.2013 в 10:54
Как переименовать лист в excel макрос
Страницы: 1
Переименование листов через VBA
Пользователь
Сообщений: 257 Регистрация: 02.06.2013
03.11.2016 12:06:39
Здравствуйте!
Просьба помочь через VBA переименовать листы, так как я из этих листов макросом затем подтягиваю данные в отчет, но так как листы каждый месяц переименовываются, с подтягиванием данных проблемы.
1 вопрос: У меня имеется 5 листов.
Задача:
— переименовать 3 листа через VBA: «01», «AA 02», «BB 02» на названия, указанные в ячейках F2:H2 соответственно. Названия этих листов меняются каждый месяц на 1 цифру.
Как я понимаю, необходимо сначала подтянуть текущие наименования этих 3 листов, допустим в ячейки F1:H1, а затем макросом их переименовать.
— лист «Исходный» и «Формулы» не переименовываются, остаются без изменений, каждый месяц меняются названия только этих 3-х листов.
Я нашел на одном из формуром код, который подтягивает название активного листа в заданную ячейку:
If ActiveSheet.name <> «Формулы» Then Sheets(«Формулы»).Range(«F1») = ActiveSheet.name
А мне необходимо, чтобы подтягивал именно из 3-х указанных листов. Может быть привязку сделать к их порядковому номеру? Листы для переименования находятс всегда со 2-го по 4-й, их количество неизменно.
2 вопрос: как затем перейти на лист, название которого указано, допустим, в ячейке F2?
Спасибо.
Прикрепленные файлы
- Шаблон.xlsx (13.97 КБ)