Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A2:A4"), Target) Is Nothing Then
For Each iCell In Target
Sheets(iCell.Row).Name = IIf(iCell <> "", iCell.Value, WorksheetFunction.Rept(" ", iCell.Row))
Next
End If
End Sub
Он рабочий но у меня задача чуть сложнее. Нужно чтобы имя листов бралось из ячеек
Например из листа 2 диапазон ячеек F10:O10 имя бы подставлялось в нужный лист F10 - лист 5 G10 - лист 6 H10 - лист 7 и так далее.....
Другими словами нужно чтобы имена нужных листов брались из горизонтального диапазона ячеек.