Уважаемый господа,
Есть Макрос подмены имени листа в зависимости от значение в определенной ячейке на этом листе.
Вот собственно и он
Sub SetActiveSheetName()
Dim NewName As String, WsExist As Boolean
On Error Resume Next
NewName = [B3]
If Len(NewName) = 0 Then Exit Sub
With Worksheets(NewName): End With
WsExist = (Err = 0)
Err.Clear
Application.EnableEvents = False
ActiveSheet.Name = NewName
If Err <> 0 Then
MsgBox "Имя '" & NewName & "' " _
& IIf(WsExist, "уже существует!", "ошибочно") & vbCrLf _
& "Введите другое имя", _
vbCritical, _
" Ошибка!"
Application.Undo
End If
Application.EnableEvents = True
End Sub
ВОПРОС?
Если к примеру где то ещё в других макросах упоминается имя листа к примеру вот так
Sheets("Отчетный месяц").Visible = True
То при перемене его имени он тут не меняется и макрос больше не работает, как выйти из ситуации????
У меня Sheets("Отчетный месяц").Visible = True идет как Лист1, но если поставить вот так Sheets(Лист1).Visible = True, то возникает ошибка, а как подругому незнаю=((((
Заранее всем спасибо!
С уважением,
Александр
Есть Макрос подмены имени листа в зависимости от значение в определенной ячейке на этом листе.
Вот собственно и он
Sub SetActiveSheetName()
Dim NewName As String, WsExist As Boolean
On Error Resume Next
NewName = [B3]
If Len(NewName) = 0 Then Exit Sub
With Worksheets(NewName): End With
WsExist = (Err = 0)
Err.Clear
Application.EnableEvents = False
ActiveSheet.Name = NewName
If Err <> 0 Then
MsgBox "Имя '" & NewName & "' " _
& IIf(WsExist, "уже существует!", "ошибочно") & vbCrLf _
& "Введите другое имя", _
vbCritical, _
" Ошибка!"
Application.Undo
End If
Application.EnableEvents = True
End Sub
ВОПРОС?
Если к примеру где то ещё в других макросах упоминается имя листа к примеру вот так
Sheets("Отчетный месяц").Visible = True
То при перемене его имени он тут не меняется и макрос больше не работает, как выйти из ситуации????
У меня Sheets("Отчетный месяц").Visible = True идет как Лист1, но если поставить вот так Sheets(Лист1).Visible = True, то возникает ошибка, а как подругому незнаю=((((
Заранее всем спасибо!
С уважением,
Александр