Buenas tardes! JavierPuig_85
Bienvenido a la comunidad de Microsoft.
Observo que intentas cerrar un documento de Word específico mediante VBA. Parece que vas por buen camino, sin embargo, hay un pequeño error en tu código. Debes incluir la extensión ".docm" al referirte al nombre del documento. Además, verifica que el documento esté abierto y que el nombre sea exactamente el mismo.
Aquí tiene una versión revisada de su código:
Sub Close_Doc()
*Dim wd As Word.Application*
*' Attempt to get the running instance of Word*
*On Error Resume Next*
*Set wd = GetObject(Class:="Word.Application")*
*On Error GoTo 0*
*' Check if Word is running*
*If Not wd Is Nothing Then*
*' Close the specified document*
*wd.Documents("Lots of Documents.docm").Close SaveChanges:=wdDoNotSaveChanges*
*Else*
*MsgBox "Word application is not running."*
*End If*
*' Clear the object*
*Set wd = Nothing*
End Sub
Here's a breakdown of what's happening:
- Usando On Error Resume Siguiente para manejar la situación en la que es posible que Word no se esté ejecutando. Esto evita que el código falle.
- verificando si wd se establece en una instancia de Word. De lo contrario, muestra un cuadro de mensaje que dice que Word no se está ejecutando.
- Si Word se está ejecutando, intenta cerrar el documento especificado sin guardar los cambios.
- Finalmente, borramos la referencia del objeto estableciendo wd a Nothing.
Esto debería ayudarle a cerrar correctamente el documento "Lots of Documents.docm". Si necesita guardar los cambios antes de cerrar, puede cambiar SaveChanges:=wdDoNotSaveChanges a SaveChanges:=wdSaveChanges.
Nota: Hay una diferencia entre cerrar un archivo y cerrar una aplicación. Si solo has abierto un archivo, puede que el programa Word no se cierre como esperabas. Puede ser necesario ajustar los detalles del código en este punto.
Por favor revise su mensaje privado aquí, he compartido el archivo:

Inténtalo y házmelo saber si funciona. ;)
Chandy.L | Especialista en Soporte Comunitario de Microsoft