VBA Excel 2010, Identificar si existe un nombre de tabla

Como puedo identificar si un nombre de tabla existe en una hoja.

1 Respuesta

Respuesta
3

Sabemos que los nombres puede tener alcance solo en las hojas o en todo el libro.

Entonces, para conocer si un nombre existe EN UNA HOJA, esta es la macro. Reemplazá ActiveSheet por el nombre de la hoja que necesitas revisar.

Sub consultaNombres()
'x Elsamatilde
nbre = InputBox("Ingresa el nombre que buscas en ESTA HOJA")
For x = 1 To ActiveSheet.Names.Count
If ActiveSheet.Names(x).Name = ActiveSheet.Name & "!" & nbre Then
 MsgBox "El nombre se encuentra en la hoja",,"ATENCIÓN"
 Exit For
End If
Next
End Sub

Observa que al nombre se le antepone el nombre de la hoja a revisar.

Si debes revisar en todo el libro no hace falta todo esto, solo hacer mención a ActiveWorkBook.

Sdos y no olvides finalizar la consulta si el tema queda resuelto.

ElsaMatilde, una aclaración:

No me funciona..., quizás no me he sabido explicar. Voy a dar un ejemplo, en un libro en blanco, copio los siguientes valores;
Cliente Monto
K0035 $121,184
R9212 $201,054
V0027 $85,232
Z0028 $35,309
X0029 $438,571
Luego en el menú de Excel, voy a insertar, Tabla, y por defecto asocia el nombre Tabla#, el cual cambio a un nombre más explicativo. Tengo varias series de datos en la misma hoja todas convertidas en tabla y con un nombre descriptivo y busco que al momento de renombrar la tabla por VBA me indique si el nombre ya existe.

Elsa, Luis,

Gracias por vuestra gentileza y colaboración. En función a las respuestas dadas pude encontrar lo que necesitaba. Adjunto la macro resultante.

Sub nombre()
NroTablas = ActiveSheet.ListObjects.Count
nbre = InputBox("Ingresa el nombre que buscas en ESTA HOJA")
For x = 1 To NroTablas
If ActiveSheet.ListObjects(x).Name = nbre Then
MsgBox "La tabla : " & nbre & " ya existe en el libro"
Exit For
End If
Next
End Sub

Nota:

El nombre de las tablas es "Case Sensitive", por lo que se debe digitar con mayúsculas y minúsculas como está escrito en la colección de objetos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas