Giriş isteyen ve yeni bir sekme oluşturan bir düğmem var. İlk çalıştırma harika çalışıyor, ancak sonraki çalıştırmalar bu hatayı veriyor:
İşte kod:
Sub btnAddProject()
Dim template As Worksheet
Dim newSheet As Worksheet
Dim newName As String
newName = Application.InputBox("Enter Project Name") 'get name
Worksheets("Template").Visible = True 'Unhide template
Set template = ActiveWorkbook.Sheets("Template") 'identify template
template.Copy After:=Sheets(Sheets.Count) 'create copy
Set newSheet = ActiveSheet 'identify new sheet
newSheet.Name = newName 'rename sheet
'deleteNames (newSheet.Name) 'delete copied named ranges with worksheet scope
newSheet.Range("D2").Value = newName 'Change header on new sheet
Worksheets("Template").Visible = False 'Hide template
Worksheets("Consolidated Grid").Activate 'switch back to dashboard
updateProjectIndex (newName)
End Sub
Hata atılmış newSheet.Name = newName
ve bana "Template (2)" adlı bir sayfa bırakıyor.
Buna ne sebep oluyor?
İlgili olması durumunda, updateProjectIndex
temelde projeler listesine yeni bir satır ekleyen alt bölümdür (iki yerde):
Sub updateProjectIndex(newName)
Application.ScreenUpdating = False
Sheets("Dashboard").Select
ActiveSheet.Rows(12).Select
Selection.Copy
Selection.Insert Shift:=xlDown
ActiveSheet.Range("B13").Value = newName
Sheets("Consolidated Grid").Select
ActiveSheet.Columns("F:F").Select
Selection.Copy
Selection.Insert Shift:=xlRight
ActiveSheet.Range("G1").Value = newName
Sheets("Dashboard").Select
ActiveSheet.Range("B13").Select
Application.ScreenUpdating = True
End Sub