Обычно для переименования листов в Excel мы можем быстро дважды щелкнуть вкладку листа или щелкнуть правой кнопкой мыши вкладку листа, чтобы выбрать команду «Переименовать» для переименования листов. Это очень удобно, чтобы переименовать один или два листа в Excel, но если мы хотим переименовать несколько листов в рамках одной операции, как мы можем это сделать?
Использование команды Rename для переименования листов
Использование кода VBA для переименования нескольких листов
Использование удобного инструмента для удобного переименования нескольких листов
Использование команды Rename для переименования листов
Мы можем быстро переименовать листы в Excel с помощью Переименовывать команду в соответствии со следующими процедурами:
Щелкните правой кнопкой мыши вкладку листа, который вы хотите переименовать, и выберите Переименовывать из контекстного меню. Или дважды щелкните вкладку листа, чтобы переименовать лист. Затем введите новое имя и нажмите Enter ключ, чтобы переименовать его, см. снимок экрана:
С этой Переименовывать , вы можете переименовать только один лист за раз, чтобы переименовать несколько листов, повторите указанные выше операции.
Наблюдения и советы этой статьи мы подготовили на основании опыта команды Переименовать несколько листов полезности Kutools for Excel может помочь вам легко переименовать несколько листов одновременно в Excel.
Скачать сейчас! (30-дневная бесплатная трасса)
Использование кода VBA для переименования нескольких листов
Здесь я представлю вам два кода VBA для переименования нескольких листов.
1. Код VBA для одновременного переименования нескольких листов по желаемому имени.
Используя следующий код VBA, вы можете быстро переименовать все листы текущей книги с тем же префиксом в их именах листов, например: KTE-order1, KTE-order 2 и KTE-order 3…
1. Нажмите на Застройщик > Визуальный Бейсики нажмите Вставить > Модули в Приложение Microsoft Visual Basic для Windows.
2. Скопируйте и вставьте следующий код в Модули
VBA: переименуйте все листы, введя определенное имя
Sub ChangeWorkSheetName()
'Updateby20140624
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
newName = Application.InputBox("Name", xTitleId, "", Type:=2)
For i = 1 To Application.Sheets.Count
Application.Sheets(i).Name = newName & i
Next
End Sub
3. Нажмите кнопку, чтобы выполнить код, и введите желаемое имя во всплывающем диалоговом окне. см. скриншоты:
4. Нажмите OK. Затем вы увидите, что все листы переименованы.
2. Код VBA для переименования нескольких листов по определенному значению ячейки на каждом листе активной книги.
Используя следующий код VBA, он переименует все листы текущей книги, используя содержимое конкретной ячейки. Например, вы можете ввести имя рабочего листа в ячейку A1 всей книги, и тогда рабочий лист будет переименован в значение ячейки A1.
1. Укажите ячейку, которая будет содержать имя рабочего листа на каждом листе, и введите в нее имя рабочего листа. В этом примере я введу имя рабочего листа в ячейку A1 на каждом листе.
2. Нажмите Застройщик > Визуальный Бейсики нажмите Вставить > Модули в Приложение Microsoft Visual Basic Окон.
3. Скопируйте и вставьте следующий код в модуль.
VBA: переименовать листы по определенному содержимому ячейки
Sub RenameTabs()
'Updateby20140624
For x = 1 To Sheets.Count
If Worksheets(x).Range("A1").Value <> "" Then
Sheets(x).Name = Worksheets(x).Range("A1").Value
End If
Next
End Sub
4. Нажмите кнопку для выполнения кода. Все рабочие листы переименовываются на основе содержимого ячеек A1.
Ноты:
1. В приведенном выше коде A1 — это содержимое ячейки, на основе которого вы хотите переименовать рабочие листы, вы можете изменить его по своему усмотрению
2. Если конкретная ячейка не имеет содержимого, то рабочий лист этой ячейки не будет переименован.
Использование удобного инструмента для удобного переименования нескольких листов
Наблюдения и советы этой статьи мы подготовили на основании опыта команды Переименовать несколько листов инструмент Kutools for Excel очень удобен для переименования всех листов или выбранных конкретных листов текущей книги.
С помощью этого инструмента вы можете быстро переименовать все рабочие листы или выбранные конкретные рабочие листы, добавив дополнительное содержимое до или после имени существующего рабочего листа или заменив исходные имена листов новыми именами. Вы также можете переименовать все листы или выбранные листы, используя содержимое ячеек диапазона.
1. Переименуйте несколько рабочих листов с определенными данными, используя Kutools for Excel
С этой Переименовать несколько листов инструмент, вы можете легко переименовать рабочие листы с определенным значением, которое вы можете поместить до или после исходного имени рабочего листа, также вы можете заменить оригинал определенным значением. Сделайте следующее:
1. Нажмите Кутулс Плюс > Рабочий лист > Переименовать листы. Смотрите скриншот:
2. Задайте настройки в Переименовать несколько листов диалоговое окно. Смотрите скриншот:
1. Выберите листы, которые вы хотите переименовать, из Worksheets .
2. Выберите один тип, листы которого вы хотите переименовать в Параметры переименования.
3. Введите конкретное значение в Из поля ввода.
3. Затем нажмите OK. Вы получите следующие результаты:
2. Переименуйте несколько рабочих листов со значениями ячеек, используя Kutools for Excel
Если у вас есть диапазон значений ячеек, и теперь вам нужно переименовать имя рабочего листа со значениями ячеек, эта утилита также может помочь вам быстро переименовать несколько листов с определенными значениями ячеек. Пожалуйста, сделайте так:
1. Примените эту утилиту, нажав Предприятие > Рабочий лист > Переименовать несколько листов . И в Переименовать несколько листов диалоговом окне укажите следующие параметры:
1. Выберите листы, которые вы хотите переименовать, из Worksheets .
2. Выберите один тип, листы которого вы хотите переименовать в Параметры переименования.
3. Нажмите кнопку, чтобы выбрать значения ячеек, которые вы хотите назвать листы на основе под Из определенного диапазона .
3. Затем нажмите OK. Вы получите следующий результат:
3. Переименуйте несколько рабочих листов с определенным значением ячейки на каждом листе, используя Kutools for Excel
Чтобы переименовать рабочий лист с определенным значением ячейки на каждом листе, Kutools for Excel‘s Переименовать несколько листов также могу оказать вам услугу, пожалуйста, сделайте следующее:
1. Примените эту утилиту, нажав Предприятие > Рабочий лист > Переименовать несколько листов . И в Переименовать несколько листов диалоговом окне укажите следующие параметры:
1. Выберите листы, которые вы хотите переименовать, из Worksheets .
2. Выберите один тип, листы которого вы хотите переименовать в Параметры переименования.
3. Нажмите кнопку, чтобы выбрать конкретное значение ячейки, которое вы хотите назвать листы на основе под Переименовать листы с определенной ячейкой .
2. Затем нажмите Ok кнопки, имена рабочих листов были переименованы с конкретным значением ячейки на каждом листе, см. снимок экрана:
Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Демонстрация: переименуйте несколько рабочих листов с помощью Kutools for Excel
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Содержание
- Excel переименовать группу листов
- Проблемы с отображением видео:
- Как быстро переименовать листы?
- Макрос для копирования и переименования листов Excel
- Требования к именам листов
- Процесс переименования
- контекстное меню ярлыка
- двойной щелчок по ярлыку
- Как переименовать лист рабочей книги при помощи мыши?
- Вставка нового листа в Excel
- Обращение к рабочим листам
- Скрытие и отображение листов
- Описание задачи
- Как копировать и переименовать лист Excel макросом
- Перемещение/копирование листов в Excel
- Как сменить название листа
- Как изменить имя листа при помощи контекстного меню?
- Удаление листа в Excel
Excel переименовать группу листов
Проблемы с отображением видео:
Как быстро переименовать листы?
Типичная задача. Есть много листов названия которых нас не устраивают. Мы хотим их переименовать. Делать это вручную очень долго.
C надстройкой ЁXCEL это сделать легко.
Перейдите во вкладку «ЁXCEL» главного меню, нажмите кнопку «Листы», в выпавшем списке выберите пункт «Получить список листов книги»:
В открывшемся диалоговом окне установите переключатель в положение «Простой список листов (все листы)» и нажмите «ОК»:
Программа создаст в активной книге новый лист на который выведет названия всех листов:
Исключите из списка листы, которые вы не хотите переименовывать, а напротив оставшихся введите новые названия, чтобы получилось так:
Выделите диапазон со старыми и новыми названиями листов, п ерейдите во вкладку «ЁXCEL» главного меню, нажмите кнопку «Листы» и выберите команду «Переименовать листы из списка»:
В открывшемся диалоговом окне нажмите «ОК»:
Источник
Макрос для копирования и переименования листов Excel
Требования к именам листов
К именам листов рабочей книги предъявляется несколько ограничений:
1) длина введенного имени не должна превышать 31-го знака;
2) имя листа не должно содержать ни одного из следующих знаков: двоеточи” ( : ), косая черта ( / ), вопросительный знак ( ? ), звездочка ( * ) и квадратные скобки ( [ ] );
3) имя не должно быть пустым.
Процесс переименования
Процедура переименования листов в Экселе в целом интуитивно понятна. Тем не менее, у некоторых пользователей, которые только начинают освоение программы, возникают определенные трудности.
Прежде, чем перейти непосредственно к описанию способов переименования, выясним, какие названия давать можно, а присвоение каких будет некорректным. Имя может быть присвоено на любом языке. При его написании можно использовать пробелы. Что же касается основных ограничений, то следует выделить следующие:
- В наименовании не должны присутствовать такие символы: «?», «/», «», «:», «*», «[]»;
- Название не может быть пустым;
- Общая длина наименования не должна превышать 31 знак.
При составлении имени листа нужно учитывать вышеуказанные правила. В обратном случае программа не даст завершить данную процедуру.
контекстное меню ярлыка
Наиболее интуитивно понятный способ переименования – это воспользоваться возможностями, которые предоставляет контекстное меню ярлыков листов, расположенных в левой нижней части окна приложения сразу над строкой состояния.
- Кликаем правой кнопкой по ярлыку, над которым хотим произвести манипуляцию. В контекстном меню выбираем пункт «Переименовать».
двойной щелчок по ярлыку
Существует и более простой способ переименования. Нужно просто кликнуть двойным щелчком по нужному ярлыку, правда, в отличие от предыдущего варианта, не правой кнопкой мыши, а левой. При использовании данного способа никакого меню вызывать не нужно. Наименование ярлыка станет активным и готовым к переименованию. Вам останется только набрать нужное название с клавиатуры.
Как переименовать лист рабочей книги при помощи мыши?
Для переименования листа необходимо:
1) в окне открытой книги дважды щелкнуть левой кнопкой мыши на ярлычке нужного листа;
2) набрать нужное имя листа, соблюдая требования к листам, изложенные выше;
3) нажать клавишу Enter на клавиатуре для закрепления введенного имени.
Вставка нового листа в Excel
- Чтобы вставить новый рабочий лист, найдите и нажмите кнопку Новый лист.
- Откроется новый пустой лист.
Для того чтобы изменить количество листов, открываемых по умолчанию в новой книге Excel, перейдите к представлению Backstage, нажмите Параметры, затем выберите количество листов, которые необходимо включать в каждую новую книгу.
Обращение к рабочим листам
Рабочий лист (Worksheet) принадлежит коллекции всех рабочих листов (Worksheets) книги Excel. Обратиться к листу можно как к элементу коллекции и, напрямую, по его уникальному имени.
Откройте редактор VBA и обратите внимание на вашу книгу в проводнике, где уникальные имена листов указаны без скобок, а в скобках – имена листов, отображаемые на ярлычках в открытой книге Excel. Уникальные имена листов отсортированы по алфавиту и их расположение по порядку не будет соответствовать их индексам (номерам), если листы перемещались по отношению друг к другу. Индексы листов смотрите по порядку расположения ярлычков в открытой книге. Переместили листы – изменились их индексы.
Обращение к рабочему листу в коде VBA Excel:
- УникИмяЛиста – уникальное имя листа, отображаемое в проводнике редактора VBA без скобок, с помощью кода VBA изменить его невозможно.
- N – индекс листа от 1 до количества всех листов в книге, соответствует порядковому номеру ярлычка этого листа в открытой книге Excel.
- Имя листа – имя листа, отображаемое в проводнике редактора VBA в скобках, с помощью кода VBA изменить его можно.
Количество листов в рабочей книге Excel определяется так:
Скрытие и отображение листов
Для скрытия и отображения рабочих листов в VBA Excel используется свойство Worksheet.Visible со следующим синтаксисом:
expression.Visible
где expression – переменная, представляющая собой объект Worksheet. Свойству Worksheet.Visible могут присваиваться следующие значения:
- False – лист становится невидимым, но он будет присутствовать в списке скрытых листов, и пользователь сможет его отобразить с помощью инструментов рабочей книги Excel.
- xlVeryHidden – лист становится супер невидимым и его не будет в списке скрытых листов, пользователь не сможет его отобразить. Актуально для Excel 2003-2016.
- True – лист становится видимым.
Аналоги присваиваемых значений:
- False = xlHidden = xlSheetHidden = 1
- xlVeryHidden = xlSheetVeryHidden = 2
- True = xlSheetVisible = -1 (константа xlVisible вызывает ошибку)
Как создать, скопировать, переместить или удалить рабочий лист с помощью кода VBA Excel, смотрите в этой статье .
Описание задачи
Как правило, когда мы долго работаем с большим количеством листов, возникает потребность в их переименовании. Переименовать листы поштучно достаточно просто дважды кликнув по вкладке и введя новое название. Однако, если листов десятки, то это утомительно и отнимает время. Гораздо удобнее использовать надстройку VBA-Excel.
C помощью нее переименовать все листы в книге можно следующим образом:
- Нужно подготовить два списка. Первый с перечнем наименований текущих листов. Второй – с новыми наименованиями листов. Проще всего сделать два столбца в первом старые наименования и рядом список, как нужно переименовать.
- Перейдите на вкладку VBA-Excel (она будет доступна после установки программы).
- В меню Диспетчеры найдите пункт Диспетчер листов.
- В диспетчере выберите команду Переименовать
- В диалоговом окне Переименовать листы из выделенного списка укажите диапазон со старыми наименованиями листов и аналогичный диапазон, содержащий новые названия, которые должны получиться в процессе переименования.
При необходимости можно заполнить диапазон текущими названиями листов нажав кнопку Заполнить. - Нажмите кнопку Переименовать.
Как копировать и переименовать лист Excel макросом
Представьте ситуацию: Вы готовите планы работ для сотрудников определенного отдела фирмы. Пример таблицы плана выглядит так:
Руководитель этого отдела пожелал, чтобы названия листов планов работ для каждого сотрудника содержали их имена и фамилии.
Многократное копирование листов шаблона для составления и заполнения планов работ сотрудников с переименованием, потребует много времени и сил если делать все это вручную. Поэтому напишем свой макрос, который упростит данную задачу.
Техническое Задание (ТЗ) для макроса заключается в следующем. После выделения ячеек, которые содержат названия для листов нужно скопировать лист с шаблоном для планов работ ровно столько сколько будет выделенных ячеек и ввести соответствующие названия в ярлычки.
Для этого сначала откройте редактор кода макроса: «РАЗРАБОТЧИК»-«Код»-«Visual Basic» (ALT+F11):
В редакторе создайте новый модуль выбрав инструмент «Insert»-«Module» и введите в него следующий код макроса:
Sub PlanRabot()
Dim diapaz As Range
Dim i As Long
Dim list As Worksheet
On Error Resume Next
Set diapaz = Application.InputBox( «Пожалуйста, выделите диапазон ячеек, который содержит названия для новых листов!» , Type:=8)
On Error GoTo 0
If diapaz Is Nothing Then Exit Sub
Set list = ActiveSheet
For i = 1 To diapaz.Count
list.Copy after:=ActiveSheet
ActiveSheet.Name = Left(diapaz(i), 31)
Next
End Sub
Теперь если вы хотите скопировать лист шаблона для заполнения плана работ и создать копии плана для каждого сотрудника имена с фамилиями которых будут присвоены названиям листа, то перейдите на исходный лист с шаблоном плана работ и выберите инструмент: «РАЗРАБОТЧИК»-«Код»-«Макросы»-«PlanRabot»-«Выполнить». Сразу же после запуска макроса появиться диалоговое окно:
Теперь перейдите на лист «Имена и Фамилии» и выделите в нем диапазон ячеек, которые содержат имена и фамилии сотрудников. И нажмите на кнопку ОК.
В результате чего макрос сам автоматически скопирует планы работ для каждого сотрудника и присвоит новым листам соответственные имена и фамилии.
Перемещение/копирование листов в Excel
Перемещать листы в Excel с помощью мышки очень просто: возьмите ярлычок листа и, двигаясь по горизонтали, перетащите его на новое место.
Если во время этой операции вы нажмете и будете удерживать клавишу [Ctrl], то лист… правильно, скопируется! (Вспомните, как мы копировали файлы в WINDOWS ). То же самое можно делать с группой листов.
Эту же операцию можно выполнить в Excel с помощью команды контекстного меню листа Переместить/скопировать или команды Правка/Переместить/скопировать лист . Ими особенно удобно пользоваться, если вы хотите скопировать или переместить лист в другую книгу.
Перед копированием или перемещением листа в другую книгу необходимо открыть книгу-получатель. Кроме того, в случае копирования не забудьте установить флажок в поле Создать копию . В противном случае лист просто переместится в указанное вами место.
Задание для самостоятельной работы:
В книге Мои таблицы. xls переместите лист Население Земли в конец книги, верните его на прежнее место, сделайте копию листа в этой же книге, скопируйте его в новую книгу.
Создайте пустой файл Мои таблицы-копии.xls ( для этого новую рабочую книгу сохраните под этим названием в каталоге C:ST). Скопируйте в него лист Население Земли.
Как сменить название листа
При создании новой книги Excel рабочие листы по умолчанию носят имя Лист1, Лист2 и т.д.
Как правило, листы переименовывают в более подходящие имена, в зависимости от его содержания. Это может быть и «Отчет» и «График» и т.д. Чтобы переименовать название листа, дважды кликните на ярлыке данного листа.
Программа выделит этот ярлык и включит название в режим редактирования, так что вы сможете прописать любое название какое захотите.
1. Название листа может содержать максимум до 31 символа, причем пробелы допускаются.
2. В названии листа нельзя прописывать следующие символы:
(обратная косая черта);
Учтите, что именно на ярлыке листа будет отображаться название, поэтому для длинного названия необходимо будет более длинный ярлык. Таким образом, если вы хотите использовать более длинные имена листов, то без прокручивания полосы вы сможете увидеть только несколько ярлыков.
Как изменить имя листа при помощи контекстного меню?
Чтобы переименовать лист при помощи контекстного меню, нужно:
1) в окне открытой книги один раз кликнуть правой кнопкой мыши на ярлыке нужного листа;
2) в контекстном меню выбрать пункт “Переименовать”;
3) набрать новое имя листа в соответствии с требованиями к именам листов;
4) нажать клавишу Enter на клавиатуре, чтобы закрепить новое имя.
Удаление листа в Excel
- Щелкните правой кнопкой мыши по ярлычку листа, который необходимо удалить, и из контекстного меню выберите пункт Удалить.
- Лист будет удален.
Удаление листа из рабочей книги нельзя отменить. Это одно из немногих необратимых действий в Excel. Хорошенько подумайте, прежде чем удалять их.
Если требуется ограничить изменения, которые разрешается вносить в текущий лист, Вы можете его защитить. Для этого щелкните правой кнопкой мыши по ярлычку листа и из контекстного меню выберите пункт Защитить лист.
Источник
Типичная задача. Есть много листов названия которых нас не устраивают. Мы хотим их переименовать. Делать это вручную очень долго.
C надстройкой ЁXCEL это сделать легко.
Перейдите во вкладку «ЁXCEL» главного меню, нажмите кнопку «Листы», в выпавшем списке выберите пункт «Получить список листов книги»:
В открывшемся диалоговом окне установите переключатель в положение «Простой список листов (все листы)» и нажмите «ОК»:
Программа создаст в активной книге новый лист на который выведет названия всех листов:
Исключите из списка листы, которые вы не хотите переименовывать, а напротив оставшихся введите новые названия, чтобы получилось так:
Выделите диапазон со старыми и новыми названиями листов, перейдите во вкладку «ЁXCEL» главного меню, нажмите кнопку «Листы» и выберите команду «Переименовать листы из списка»:
В открывшемся диалоговом окне нажмите «ОК»:
Указанные листы будут переименованы.
Добавить комментарий
Piddy Пользователь Сообщений: 45 |
#1 11.07.2017 21:10:08 Добрый вечер. Необходимо автоматически переименовывать листы книг из нескольких книг на основе ячеек таблицы.Данные по файлам и листам создаются на основе макросов . В столбце G указаны пути к файлам. Столбец B содержит имена листов в соответствии с именем файла. Некоторые файлы содержат более одного листа. Пока получилось набросать только вариант с переименованием листов текущей книги на основе одной ячейки. Как это оформить в виде цикла для пробега по столбцам — не додумал.
Есть ли какие-то идеи? Сам процесс также тяжело проделать вручную, так как файлов очень много. Заранее благодарен. Прикрепленные файлы
|
||
Nordheim Пользователь Сообщений: 3154 |
#2 11.07.2017 22:33:26 Все что смог, над переименованием сами подумайте, я честно ничего не понял, что во что нужно переименовывать.
Изменено: Nordheim — 12.07.2017 09:59:33 «Все гениальное просто, а все простое гениально!!!» |
||
kuklp Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
Изменено: kuklp — 12.07.2017 08:45:26 Я сам — дурнее всякого примера! … |
Piddy Пользователь Сообщений: 45 |
#4 13.07.2017 00:30:18 Коллеги, спасибо за идеи
Он правильно запускает цикл по файлам, но не делает (судя по Debug) цикл по всем листам на предмет соответствия имен листов значению столбца B. Я попытался добавить цикл переименования листов по критерию, но пока получилось только так.
Плюс надо учесть, что перед переименованием лист должен быть соответствующий лист должен быть открыт, что я попытался добавить в код Изменено: Piddy — 13.07.2017 00:33:57 |
||||
Nordheim Пользователь Сообщений: 3154 |
Переименовываться должны только те листы которые выделены желтым в 1столбце или во втором? 2 «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,Во втором столбце. То есть например в строке 4 «false_sample_ad» должен замениться на «true sample». И так ещё для трёх строк. |
Nordheim Пользователь Сообщений: 3154 |
И соответственно изменения только в тех файлах и только те листы которые выделены желтым? «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,изменения только в тех файлах, содержащих листы, переименование которых требуется согласно жёлтым ячейкам столбца B. Возможно я переборщил с желтым цветом, но на желтизну стоит смотреть только для ячеек в столбце В. Изменено: Piddy — 13.07.2017 08:36:29 |
Nordheim Пользователь Сообщений: 3154 |
т.е. за критерий берется желтый цвет? или неравенство значений в ячейках A и B одной строки, это важно! «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Я для себя выделял в рабочем файле листы для переименования и соотвествующие им ячейки желтым, и в столбце A добавлял наименования листов которые должны быть, поэтому рационально взять в качестве критерия несовпадение. Добавил файл, чтобы вы поняли. Изменено: Piddy — 13.07.2017 09:40:20 |
Nordheim Пользователь Сообщений: 3154 |
Так в итоге на что нужно ориентироваться цвет или несовпадение? «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,несовпадение, см. файл. example (1).xlsx |
Nordheim Пользователь Сообщений: 3154 |
Пример: Есть файл abc 132.xlsx что нужно в нем поменять и на что? «Все гениальное просто, а все простое гениально!!!» |
Nordheim Пользователь Сообщений: 3154 |
бывает ситуация когда в одном файле нужно менять наименование 2 листов? «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,да, бывает, пример смотрите в строках 44-46 |
Nordheim Пользователь Сообщений: 3154 |
#16 13.07.2017 10:12:44 для изменения одного листа!
Про 44-46 строки, там тоже один лист, разве не так? Изменено: Nordheim — 13.07.2017 10:13:10 «Все гениальное просто, а все простое гениально!!!» |
||
Nordheim Пользователь Сообщений: 3154 |
если бывает больше одного листа то нужен пример во что. «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
#18 13.07.2017 10:22:21
Я правильно вас понял, что вы имеете в виду изменять наименование 2 листов в одной книге? Объясню на примере, есть книга «abc 215_215.2.xlsx» у него листы false_sample_2016, false_sample 2017, false_sample_2018 и каждому из них присваивается свое наименование, указанное в столбце A. И может быть несколько таких файлов.
Да, но ведь цикл в коде у вас пробегает по все листам книги
Значит теоретически если он еще раз пробежится по столбцам A,B, то сможет присвоить новое наименования оставшимся листам.
Извините, не перезалил файл. См. к этому сообщению вложение. Прикрепленные файлы
Изменено: Piddy — 13.07.2017 10:31:51 |
||||||||
Nordheim Пользователь Сообщений: 3154 |
Имелись ввиду именно листы. «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
#20 13.07.2017 10:33:06 Nordheim,значит мы оба идентично рассуждаем.
Прочитайте пожалуйста измененный комментарий выше. Изменено: Piddy — 13.07.2017 10:33:42 |
||
Nordheim Пользователь Сообщений: 3154 |
#21 13.07.2017 10:51:28 Пробуйте!
«Все гениальное просто, а все простое гениально!!!» |
||
Nordheim Пользователь Сообщений: 3154 |
По сообщению №18. По столбцам код пробегает один раз и забирает значения в память по условию, все остальное делается не ссылаясь на лист. «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,я проверил макрос, он работает, спасибо Вам за ваши труды. Сейчас буду детально разбираться в коде. |
Nordheim Пользователь Сообщений: 3154 |
т.е. все нормально, тему можно закрывать? «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,пока не знаю. Я правильно понял, что реализовать переименование сразу нескольких листов для всех книг — задача технически сложная и проще сделать ее ручками? |
Nordheim Пользователь Сообщений: 3154 |
Вопрос не понял, последний код переименовывает несколько листов (которые необходимо переименовать) во всех книгах исходя из условия описанного в сообщении №18 Изменено: Nordheim — 13.07.2017 11:24:25 «Все гениальное просто, а все простое гениально!!!» |
Piddy Пользователь Сообщений: 45 |
Nordheim,понял, сейчас проверю. |
yozhik Пользователь Сообщений: 957 |
#28 13.07.2017 11:57:13
Может, если необходимо хранить/накапливать/анализировать информацию целесообразнее будет использовать базу данных (Access)?.. |
||
Piddy Пользователь Сообщений: 45 |
Nordheim,макрос работает успешно. Заметил только, что 5% не обрабатываются, но это какие-то специфические книги. Имена у их листов не совсем стандартные. |
Piddy Пользователь Сообщений: 45 |
#30 13.07.2017 20:28:29
Разобрался, дело было в том, что наименования листов имели длину выше нормы. Спасибо Вам за 100% рабочее решение. Тему пока не закрывайте, так как есть предложения усовершенствовать макрос, чтобы им могли пользоваться и остальные форумчане. Я уверен, что у кого-то точно была потребность в соответствующем макросе. |
||
Как известно, листам рабочей книги в Excel вместо стандартных названий можно присваивать любые другие имена, удовлетворяющие нескольким требованиям. Более того, делать это можно очень быстро при прмощи надстройки для Excel.
Требования к именам листов
К именам листов рабочей книги предъявляется несколько ограничений:
1) длина введенного имени не должна превышать 31-го знака;
2) имя листа не должно содержать ни одного из следующих знаков: двоеточи» ( : ), косая черта ( / ), вопросительный знак ( ? ), звездочка ( * ) и квадратные скобки ( [ ] );
3) имя не должно быть пустым.
Как переименовать лист рабочей книги при помощи мыши?
Для переименования листа необходимо:
1) в окне открытой книги дважды щелкнуть левой кнопкой мыши на ярлычке нужного листа;
2) набрать нужное имя листа, соблюдая требования к листам, изложенные выше;
3) нажать клавишу Enter на клавиатуре для закрепления введенного имени.
Как изменить имя листа при помощи контекстного меню?
Чтобы переименовать лист при помощи контекстного меню, нужно:
1) в окне открытой книги один раз кликнуть правой кнопкой мыши на ярлыке нужного листа;
2) в контекстном меню выбрать пункт «Переименовать»;
3) набрать новое имя листа в соответствии с требованиями к именам листов;
4) нажать клавишу Enter на клавиатуре, чтобы закрепить новое имя.
Переименование листа при помощи стандартного меню
Пункты меню могут различаться в зависимости от версии приложения Excel. Для того чтобы переименовать лист в версиях использующих ленту, необходимо:
1) в окне открытой книги перейти на лист, который необходимо переименовать;
2) перейти на вкладку «Главная», в группе кнопок «Ячейки» зайти в меню кнопки «Формат» и выбрать пункт «Переименовать лист»;
3) ввести новое имя листа, соблюдая требования к именам листов;
4) нажать клавишу Enter для закрепления нового имени.
При помощи надстройки (макроса) для Excel можно быстро переименовать сразу несколько или все листы рабочей книги. Для этого нужно сформировать список из новых имен в свободных ячейках рабочего листа, а затем указать диапазон этих ячеек в диалоговом окне надстройки.
Надстройка позволяет:
1) быстро вызывать диалоговое окно надстройки из панели инструментов;
2) присваивать листам имена, соответствующие значениям ячеек в выделенном диапазоне (весь диапазон ячеек находится на одном листе);
3) присваивать листам имена, соответствующие значениям ячеек с заданным адресом (каждая ячейка находится на отдельном листе);
4) формировать список, состоящий из имен листов рабочей книги в ячейках заданного столбца (столбец можно задавать как номером, так и именем).
надстройка для переименования листов