#vba
#vba
Вопрос:
Я запускаю следующий код для копирования и переименования листа, но по какой-то причине имя не меняется. Есть идеи?
Заранее спасибо.
Вложенная копия ()
Sheets("TV Indicators").Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Cells.Copy
Sheets(Sheets.Count).Cells.PasteSpecial xlPasteValues
Sheets(Sheets.Count).Name = Sheets("TV Indicators").Range("A3").Value
Конец подраздела
Комментарии:
1. В общем, вы можете найти код VBA для многих «действий», записав макрос, а затем просмотрев код.
Ответ №1:
попробуйте это:
Sub copier()
Sheets("TV Indicators").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
.Cells.Copy
.Cells.PasteSpecial xlPasteValues
.Name = Sheets("TV Indicators").Range("A3").Value
End With
Application.cutcopymode = false
range("A1").Select
End Sub
Это нормально?
Комментарии:
1. Да, это отлично работает! Можно ли добавить пару строк в конец, чтобы отменить выбор листа и выйти из режима копирования / вставки?
2. Я не могу понять, почему, но теперь листы не переименовываются. Есть мысли? Еще раз спасибо.
3. Что содержит ячейка b3?
4. Это выпадающий список, который я создал с помощью проверки данных. Так что, я думаю, просто строка.
5. Содержит ли он какие-либо недопустимые символы? Например, символы?