Saltar al contenido

Verificar el nombre de una hoja de calculo


Recommended Posts

publicado

Buenos días:

Tengo el siguinte código:

Sub NombreHoja()
   ActiveSheet.Name = Range("B1").Value
   
End Sub

Bueno pone el nombre a la hoja de calculo según el valor de la celda, mi pregunta es de que si hay otra hoja con el mismo nombre me de un aviso para cambiar de nombre o en su caso asignarle por defecto un carater numérico para diferenciarse de la otra hoja que tenga el mismo nombre.

Saludos cordiales

Jesús  

publicado
Sub NombreHoja()

	Dim Nombre as String
	Dim existe as Boolean
	Dim Hoja as Worksheet

	Nombre = Range("B1").Value
	existe = False
	For each Hoja in ThisWorkbook.Worksheets
		If Hoja.Name = Nombre then
			existe = True
			Exit Sub
		End If
	Next

	if existe = true Then
		MsgBox "Por favor, introduzca otro nombre e intente de nuevo"
		exit Sub
	else
		ActiveSheet.Name = Nombre
	end if
   

End Sub

 

publicado

¡Hola a todos!

Otra opción:

Sub VerificaHoja()
   If Evaluate("ISREF('" & [B1] & "'!A1)") Then
      MsgBox "El nombre de la hoja ya existe. Intente nuevamente"
   Else
      ActiveSheet.Name = [B1]
   End If
End Sub

Nota: En tu macro @YoelMonsalve, debes cambiar la línea Exit Sub por Exit For.

¡Bendiciones!

publicado

Cierto, la escribí "a capella", sin probarla

 

Sub NombreHoja()

	Dim Nombre as String
	Dim existe as Boolean
	Dim Hoja as Worksheet

	Nombre = Range("B1").Value
	existe = False
	For each Hoja in ThisWorkbook.Worksheets
		If Hoja.Name = Nombre then
			existe = True
			Exit for
		End If
	Next

	if existe = true Then
		MsgBox "Por favor, introduzca otro nombre e intente de nuevo"
		exit Sub
	else
		ActiveSheet.Name = Nombre
	end if
   

End Sub

 

publicado

.

Aprovechando On Error:

Sub NombreHoja(): On Error Resume Next
   MsgBox "La hoja " & Sheets(Range("B1").Value).Name & " ya existe"
   ActiveSheet.Name = Range("B1").Value
End Sub

 

  • Silvia bloqueó este tema

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.