Мой код в настоящее время создает 9 листов. Он равен числу ячеек в строке 1, начиная со столбца C в 'LLP Dis c Sheet', что равно 9. Это число изменяется всякий раз, когда пользователь удаляет ячейки в этой строке или добавляет дополнительные ячейки.
Теперь я хочу переименовать каждый произведенный лист (9 листов), чтобы он равнялся значению ячейки в первой строке «LLP Dis c Sheet». Например, один лист будет называться 77777 (C1 в «LLP Dis c Sheet»), другой лист - 66666 (D1 в «LLP Dis c Sheet»), 55555 (E1 в «LLP Dis c Sheet»). ') , и так далее. Я продолжаю получать сообщение об ошибке всякий раз, когда я пытался сделать ActiveSheet.rename
Наконец, я хочу изменить формулу B1 на каждом листе из 9 произведенных листов, чтобы соответствовать названию листа. Полученные 9 листов являются копиями «MasterCalculator», поэтому я попытался найти / заменить, но ошибка все равно была.
Set rng = ws.Range("B1") 'initialize the target range variable
rng.Replace "=+'LLP Disc Sheet'!C", "=+'LLP Disc Sheet'!D" 'but I want to somehow loop it so it continues to K, because that's how many sheets there ar
Модуль 1
Option Explicit
Sub NewSheets()
Dim i As Integer
Dim ws As Worksheet
Dim sh As Worksheet
Set ws = Sheets("MasterCalculator")
Set sh = Sheets("LLP Disc Sheet")
Application.ScreenUpdating = 0
For i = 2 To Range("A1:Z1").Cells.SpecialCells(xlCellTypeConstants).Count
Sheets("MasterCalculator").Copy After:=sh
Next I
End Sub