Macro VBA para eliminar vínculos Excel
Con esta macro podrás eliminar vínculos a otras hojas/libros.
- Elimina vínculos a otras hojas/libros
- Referencias dentro de la hoja se mantienen.
- Los vínculos se convierten en valores.
- Antes de todo, ¡recuerda hacer una copia de seguridad!
Copia de seguridad
Guarda una copia de seguridad de tu libro. Hazlo porque nunca sabes.
Crear el módulo
Entra a Herramientas – Macros – Editor VBA. A la izquierda ves (si no lo ves CTRL+R) algo como “ProyectoVBA (Tu libro). Marca ese proyecto. Insertar – Módulo.
Doble click en el módulo nuevo, y a la derecha sale un espacio blanco, es para el código. Herramientas – Referencias. Marca Microsoft ActiveX DataObjects x.x Library.
Ahora cierras el editor VBA, vuelves a Excel. Guardamos el libro.
El código
Sub QuitarVinculos() Dim varVinculo As Variant Dim wrsHoja As Worksheet Dim objCelda As Object Dim varMsg As Variant '(0) Un pequeño control varMsg = MsgBox("¿Ha guardado una copia de seguridad?", vbYesNo) If varMsg = 7 Then Exit Sub '(1) Quitar vínculos externos (a otros libros) varLink = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks) If Not IsEmpty(varLink) Then i = 1 Do Until IsEmpty(varLink) On Error GoTo 9 ActiveWorkbook.BreakLink Name:=varLink(i), _ Type:=xlLinkTypeExcelLinks i = i + 1 Loop End If 9: '(2) Quitar vínculos internos (a otras hojas) On Error Resume Next For Each wrsHoja In ActiveWorkbook.Worksheets For Each objCelda In wrsHoja.UsedRange.SpecialCells(xlCellTypeFormulas, 23) If InStr(objCelda.Formula, "!") Then objCelda.Value = objCelda.Value Next Next End Sub

RSS