Exportar datos de toda la hoja Excel a Word por filas

= Dante, aqui molestandote nuevamente =

Office 2016

Vi este código y me pereció útil para algunas cosas mías como es la necesidad de pasar algunos excel a Word.

Esta macro fue editada por el amigo Victor Rodriguez de este prestigioso foro

Sub ExportarExcel_Word()
Dim oAplicacionWord As Word.Application
Dim oDocumento As Word.Document
Set oAplicacionWord = New Word.Application
Set oDocumento = oAplicacionWord.Documents.Add()
Dim textoActualCelda As String
For contador = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row
'textoActualCelda = textoActualCelda & "" & Cells(contador, 1)
textoActualCelda = textoActualCelda & Chr(13) & Cells(contador, 1)
Next contador
oDocumento.Content.InsertAfter (textoActualCelda)
oAplicacionWord.Visible = True
Set oDocumento = Nothing
Set oAplicacionWord = Nothing
End Sub

Al ejecutarla me manda error y tengo estas referencias activadas

Para probar use esta hoja

¿Será por estar dividida en 2 y tener esa línea vertical?

Respuesta
1

Lo que intenta hacer es mas fácil con una "combinacion de correspondencia" es una funcion que tiene word, solo activa la pestaña de CORRESPONDENCIA>SELECCIONAR DESTINATARIOS>USAR UNA LISTA EXISTENTE

Una vez hecho eso, seleccione el archivo de excel que desee vincular (o sea de el cual extraera la informacion, vinculandolo a la hoja donde tenga la inormacion)

Al hacer eso ya estaran vinculados, solo es que usted ingrese el registro que quiera que aparezca en word, este ejemplo sirve por si quiere hacer algun tipo de plantilla y a la vez que solo algunos datos cambien, pero tambien sirve con muchos mas datos "cambiantes"

Cada "fila " de excel convierte en un registro de word (o sea un domunento diferente ) y cada columna se conbierte en un campo combinado de tal manera que si coloca en su archivo de excel 4 columnas con 100 filas con datos pordria hacer 100 archivos con un click

Ya la edición (acomodo) de los datos se limita solo a su imaginacion

Espero que le sirva, no soy experto pero me gusta mucho leer esta pagina y a mi me soluciona la vida esta función :)

1 respuesta más de otro experto

Respuesta
1

Cambia esta línea

For contador = 1 To Cells.SpecialCells(xlCellTypeLastCell).Row

Por esta:

For contador = 1 To ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row

Lo que hace la macro, y no la he probado, es pasar lo de la columna A a word, pero en tu imagen veo que la columna A está vacía

Funciona si cualquier error pero me falta saber cual es la celda para saber el nombre del archivo creado. No se cual es cual

No hay nombre de archivo, porque esa macro no guarda el archivo, solamente lo deja visible

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas