VBA que cambia el nombre en clave de la hoja Error en tiempo de ejecución 9: subíndice fuera de rango
Tengo un poco de código donde cuando presiono un botón llama a un sub que agregará una nueva hoja a un libro de trabajo y luego cambiará el nombre en clave de la hoja para que sea más fácil hacer referencia más adelante en mi código. Esto es lo siguiente:
Dim wbk As Workbook
Dim wks As Worksheet
Set wbk = ThisWorkbook
wbk.Sheets.Add.Name = "Admin - Save Log"
Set wks = wbk.Worksheets("Admin - Save Log")
wks.Parent.VBProject.VBComponents(wks.CodeName).Name = "wksAdminSaveLog"
Esto parece funcionar, SIN EMBARGO, solo cuando tengo abierta la ventana "Desarrollador" o la he abierto previamente.
Si hago clic en el botón cuando abro el documento de Excel por primera vez (sin haber abierto la ventana "Desarrollador"), agrega la hoja, sin embargo, aparece el siguiente error y no cambia el nombre en clave de la hoja:
Error en tiempo de ejecución '9': subíndice fuera de rango
Es solo cuando presiono Debug y luego ejecuto el código después de que la ventana "Developer" está abierta nuevamente que agrega el nombre del código.
¿Hay alguna forma de evitar esto para que el usuario no tenga que abrir la ventana del desarrollador para que se ejecute correctamente?
Gracias