Puedes hacerlo con el siguiente código: Sub nombre_hoja_celda() Range("d1") = ActiveSheet.Name End Sub Y con eso tendrás el nombre de tu hoja el la celda que tu elijas. Saludos y recuersda cerrar esta pregunta para que no se quede volando.
Donde tengo que escribir la fórmula que me has escrito para que el numero de hoja activa salga en cualquiera de las 20 hojas que tengo en un libro abiertas. Gracias de antemano
Depende de que es lo que quieras hacer con el nombre, si quieres que la macro durante la ejecuccion obtenga el nombre deberás colocarlo al principio de la macro que estés desarrollando, por ejemplo: sub prueba() active.sheet("hoja1").select Range("d1") = ActiveSheet.Name 'demas opciones o procesos que estoy haciendo end sub Pero si quieres que aparezca cada cuando selecciones una hoja deberás colocarlo en el la parte que dice ThisWorkBook (este libro), y colocar lo siguiente: Private Sub Workbook_SheetActivate(ByVal Sh As Object) Range("d1") = ActiveSheet.Name End Sub Y así cada vez que selecciones una hoja aparecerá el nombre de la hoja en la celda que tu quieras. Espero por haberte ayudado, por favor cierra la pregunta y evalúame saludos