El Inspector de documento encontró nombres ocultos en el libro. Estos nombres pueden almacenar información oculta sobre escenarios de Solver. Por ejemplo, al usar el complemento Solver para ejecutar un escenario, puede almacenar información sobre los parámetros de cálculo y otros datos confidenciales como nombres ocultos en el libro.
Importante: Microsoft proporciona ejemplos de programación solo para ilustración, sin garantía expresa o implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad o idoneidad para un propósito determinado. En este artículo se supone que está familiarizado con el lenguaje de programación que se muestra y con las herramientas que se usan para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos adaptados a sus necesidades específicas.
Problema
El Inspector de documento no puede quitar estos nombres ocultos.
Solución recomendada
Ejecute la siguiente macro para quitar los nombres ocultos. La macro muestra un cuadro de mensaje que muestra tres elementos: (1) si el nombre definido está visible u oculto, (2) el nombre definido y (3) a qué se refiere ese nombre (la referencia de celda del libro). Puede elegir Sí o No para eliminar o conservar cada nombre definido.
Nota: Si usa esta macro para quitar nombres ocultos, es posible que los complementos (como Solver) o las macros no funcionen según lo esperado y podrían perder los datos ocultos asociados a ellos. Esta macro también afecta a cualquier nombre definido que esté oculto, no solo a los que haya agregado Solver.
Precaución: Si los nombres de las hojas contienen espacios, es posible que reciba un error al intentar eliminar el nombre definido.
Quitar nombres ocultos
' Module to remove all hidden names on active workbook
Sub Remove_Hidden_Names()
' Dimension variables.
Dim xName As Variant
Dim Result As Variant
Dim Vis As Variant
' Loop once for each name in the workbook.
For Each xName In ActiveWorkbook.Names
'If a name is not visible (it is hidden)...
If xName.Visible = True Then
Vis = "Visible"
Else
Vis = "Hidden"
End If
' ...ask whether or not to delete the name.
Result = MsgBox(prompt:="Delete " & Vis & " Name " & _
Chr(10) & xName.Name & "?" & Chr(10) & _
"Which refers to: " & Chr(10) & xName.RefersTo, _
Buttons:=vbYesNo)
' If the result is true, then delete the name.
If Result = vbYes Then xName.Delete
' Loop to the next name.
Next xName
End Sub