Abrir un documento de Word desde Excel y luego guardarlo con el valor de una celda Excel

Quisiera saber si se puede hacer una macro que abra un documento de una carpeta asignada en word y lo guarde con el nombre de una celda asignada de excel y que deje el documento de word abierto

Eston serian los datos

Documento abrir c:\datos\documento.doc

valor celda (a1) excel 2017-5248

Documento final  y ubicacion c:\datos\pres\2017-5248.doc

1 Respuesta

Respuesta
2

Entra al Editor, inserta un módulo y allí copia la siguiente macro:

Sub renombreWord()
'x Elsamatilde
'guarda el valor de la celda A1
celdita = ActiveSheet.[A1]
'se crea la referencia al objeto Word
Dim oWord As Word.Application, wdDoc As Word.Document
Set oWord = CreateObject("Word.Application")
'se abre el doc
Set wdDoc = oWord.Documents.Open("c:\datos\documento.doc")
'se activa Word
oWord.Visible = True
'se guarda con nombre de la celda
wdDoc.SaveAs "c:\datos\pres\" & celdita & ".doc"
wdDoc.Activate
End Sub

- La celda puede ser de la hoja activa (ActiveSheet) o de otra hoja, por ej: Sheets(1).[A1]

- Ajusta el nombre de tu doc de origen y la carpeta de destino. Quedaron tus datos de ejemplo.

- Debes activa desde el Editor, menú Referencias, la denominada Microsoft Word xx Object Library (xx puede ser un número como 16.0 o el que tenga tu versión).

Si esta respuesta resuelve tu consulta no olvides valorarla (Excelente o buena).

Al copiar la macro la primera línea

Sub renombreWord()

y la

wdDoc.SaveAs "c:\datos\pres\" & celdita & ".doc

Se marcan en rojo y no me deja ejecutar la macro no se si he hecho algo mal

Da error de compilación

En línea wdDoc... debes cerrar las comillas:

wdDoc.SaveAs "c:\datos\pres\" & celdita & ".doc"

Si llega a fallar en alguna otra línea, presiona el botón Depurar de la ventana con el mensaje y así pasarás al Editor. Allí se verá la línea errada de color... captura la imagen y dejala aquí.

Sdos!

sigue igual adjunto pantallazo

Las líneas en rojo son errores de sintaxis. La primera solo indica que en esa macro hay una falla. La macro está probada y correcta. Lo ideal es que la copies y pegues de mi primer respuesta para no tener diferencias de tipeo.

Dejame un correo o escribime a [email protected] para que te envíe el libro con la macro así la copias de allí.

Sdos!

la copie directamente de tu mensaje

Ya te lo envié.

Como te faltó una comilla al final del .doc pensé que la estabas escribiendo, no copiando ;)

Comentame el resultado.

Sdos!

no funciona igual

Qué pena... más no puedo hacer.

No indicas porqué no funciona, si Excel te envía un mensaje de error o simplemente no guarda el doc. No establecí controles de existencia de ruta y doc justamente para que, en caso de inexistencia, te salte algún error y así poder identificarlo.

¿Recordaste de habilitar la referencia tal como te indiqué en primer respuesta?

¿Las rutas y carpetas están correctas?

¿En la celda A1 hay algún dato? (Debes colocar el nombre de tu doc no el que dejé como muestra)

¿El doc llamado 'documento.doc' realmente existe?

¿El 'no funciona' se refiere a mi muestra o cuando creas la tuya?

Por mi parte hice todo lo posible y te envié muestra de que 'sí funciona' ;(

Si estás trabajando en Excel 2003 o anterior tendría que esperar que alguien con esa versión lo pruebe. En este momento no tengo equipo con esa versión.

Pero debieras comentar claramente qué significa 'no funciona'.

Sdos!

Tenés la macro repetida, en la hoja y en un módulo.

Quitá la de la hoja... cerrá y guardá cambios. Y luego probala nuevamente.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas