Exportar tablas de Excel a Word

26/12/2007 - 21:41 por Jorge Rendon | Informe spam
Hola;

Tengo una duda, es que tengo unas tablas en excel y necesito llevarlas a un
documento de Word en ubicaciones especificas, pero no se si sea posible.

En caso que sea posible, me gustaria saber como funciona esto o como podria
hacerlo por medio de una macro.

Muchas gracias.
Jorge Rendon.

Preguntas similare

Leer las respuestas

#6 Jorge Rendon
28/12/2007 - 06:01 | Informe spam
Hola, :)

Mostrar la cita
Los rangos de las tablas no fueron problema mientras hacia las pruebas, las
tablas copiaban bien, segun el rango que yo asignara en la macro, pero cuando
pegaban en Word las tablas se salian de la margen del documento.
La forma es que lo organice fue dando click de derecho en propiedades
(Parado sobre la tabla en Word )y asignando un ancho preferido, con lo que la
tabla tomaba un tamaño adeuado a la pagina vertical, tambien le daba la
opcion de "centrado" para que la tabla quedara mas odenada.
La idea es que cuando la macro se ejecute la tabla quede de esa forma, con
un tamaño adecuado y centrada, para que no se tenga que hacer manualmente.

Mostrar la cita
A lo que me refiero con esto, es que el libro de Excel de donde estoy
sacando las tablas, esta vinculado con informacion de otros libros y otras
bases de datos, entonces cada que se abre pregunta si se desea actualizar la
informacion o si no se desea actualizar.
Yo solo quiero copiar las tablas y esa pregunta es un poco molesta por que
aparece cada que se abre el libro mediante la macro, por lo que debo
seleccionar la opcion "No actualizar" cada que copia una tabla. Seria muy
bueno que se puediera quitar esa pregunta, ;)


Mostrar la cita
Este es el cuadro que aparece cada que se va a realizar la combinacion de
documento:
http://img292.imageshack.us/img292/...feojy5.jpg

Es solo presionar, continuar, continuar, continuar..., cada vez que se va a
combinar un nuevo documento, pero igual seria mucho mejor que pasara derecho
sin que apareciera esta pregunta.

El codigo que uso para la combinacion es algo largo, pero mas o menos esta
compuesto por lo siguiente:

'[]

'Primero pregunta si el primer archivo existe, en caso de que exista lo abre
y lo 'toma como base para la combinacion

If (FileExists("Ruta\SALUDOCUPACIONAL\" & year & "\SALUD" & mes &
".doc")) Then
Documents.Open FileName:="Ruta\SALUDOCUPACIONAL\" & year & "\SALUD"
& mes & ".doc", ConfirmConversions:=False, _
ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
PasswordTemplate:="", Revert:=False, WritePasswordDocument:="111", _
WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:=""
Else
MsgBox (" El archivo Salud ocupacional de:" & mes & " - " & year &
" no esta disponible")
End
End If

' En este paso lo que se hace es empezar a combinar con el primero de los
'archivos que se necesitan, es en este momento donde sale la pregunta

If (FileExists("Ruta\AMBIENTAL\" & year & "\AMBIEN" & mes & ".doc"))
Then
ActiveDocument.Merge FileName:= _
"Ruta\AMBIENTAL\" & year & "\AMBIEN" & mes & ".doc" _
, MergeTarget:=wdMergeTargetNew, DetectFormatChanges:=True, _
UseFormattingFrom:=wdFormattingFromPrompt, AddToRecentFiles:=False
FlagNewtarget = 1
Else
MsgBox (" El archivo de Ambiental de:" & mes & " - " & year & "
no esta disponible")
Windows("SALUD" & mes & ".doc").Activate
ActiveWindow.Close
End
End If

'Vuelve a hacer lo mismo, pero con otro archivo

If (FileExists("Ruta\MANTENIMIENTO\" & year & "\MTMT" & mes & ".doc"))
Then

If (FlagNewtarget = 1) Then
ActiveDocument.Merge FileName:= _
"Ruta\MANTENIMIENTO\" & year & "\MTMT" & mes & ".doc" _
, MergeTarget:=wdMergeTargetCurrent,
DetectFormatChanges:=True, _
UseFormattingFrom:=wdFormattingFromPrompt,
AddToRecentFiles:=False
Else
ActiveDocument.Merge FileName:= _
"Ruta\MANTENIMIENTO\" & year & "\MTMT" & mes & ".doc" _
, MergeTarget:=wdMergeTargetNew, DetectFormatChanges:=True, _
UseFormattingFrom:=wdFormattingFromPrompt,
AddToRecentFiles:=False
FlagNewtarget = 1
End If
Else
MsgBox (" El archivo de Mantenimiento de:" & mes & " - " & year & "
no esta disponible")
End If

' ... Continua repitiendose el mismo codigo, pero cambiando la ruta
del 'archivo que se desea combinar, pero cada vez que va a combinar, aparece
la 'misma pregunta

Espero se entienda, gracias por la atencion prestada.

Jorge Rendon
#7 Tux
29/12/2007 - 01:30 | Informe spam
Hola Jorge :-)!

Mostrar la cita
Bien para ello tendras que añadir unas lineas en el codigo mas o menos
asi en el apartado siguiente»

'[]
'anterior codigo y cambio en las siguiente lineas
With Y.Sheets("hoja1")
.[A1:i10].Copy
With Selection
.GoTo What:=wdGoToBookmark, Name:="uno"
.PasteSpecial link:=False
.Tables(1).Rows.Alignment = wdAlignRowCenter
.Tables(1).PreferredWidth = CentimetersToPoints(0.5)
End With
End With
'continuacion del codigo anterior en el otro hilo
'[]


Mostrar la cita
Bien para desactivar la pregunta molesta »

Ves a Excel y en menu Herramientas » Opciones » en la etiqueta Modificar
» busca ahi » Consultar al actualizar vinculos automaticos y desmarcala
o destildala.

se actualizaran automaticamente esos vinculos sin necesidad de la
pregunta :-)


Mostrar la cita
Se entiende se entiende pero esto te lo miro para el Domingo que hoy he
estado liada y mañana mas aun jejejejje! pero el domingo ya me miro el
codigo y lo de la combinacion ok? :-) y te comento todo asi me lo miro
mas detalladamente que a estas horas no veo codigos ni letras casi :-P !!

Mirate el codigo nuevo que te he dado y mira a ver si te pega la tabla
normal y tambien lo de quedarse centrada y lo ancho de las celdas que
puedes variar los centimetros al gusto y ya comentamos ok? :-)


Saludos
Monica




Estado: A la Espera By Fermu

Tic-Tac-Tic-Tac...

» Now We are free [Enya]
» United states of love [ Westbam and the love commitee ]
» Nothing Else Matters [ Metallica ]

www.fermu.com
#8 Jorge Rendon
29/12/2007 - 23:44 | Informe spam
Hola monica

Mostrar la cita
Claro, no ahi ningun problema ni mucho menos, ;)

Con respecto al codigo funciona bien, la tabla queda centrada y al
deshabilitar esa opcion, no vuelve a preguntar, exactamente como lo queria.

Para las tablas, tambien queria organizar una cosa mas, que en toda la
tabla, el contenido de cada celda qude centrado en la celda, vi que el codigo
para eso era los siguientes:

Selection.Cells.VerticalAlignment = wdCellAlignVerticalCenter

Al añadirlo al codigo que se tenia lo coloque de la siguiete forma:

With Selection
.GoTo What:=wdGoToBookmark, Name:="Indicadores"
.PasteAndFormat (wdPasteDefault)
.Tables(1).Rows.Alignment = wdAlignRowLeft
.Tables(1).PreferredWidth = CentimetersToPoints(15)
'En este lugar lo añadi
.Cells.VerticalAlignment = wdCellAlignVerticalCenter
End With


Pero me genera un error al correrlo "El elemento del conjunto solicitado no
existe". El error aparece en la linea que acabo de añadir

Cuando puedas le das una mirada entonces a ver si se puede quitar el mensaje
que aparece al combinar, ;)

Gracias por todo, Feliz Navidad y Felices fiestas.
Jorge
#9 Tux
30/12/2007 - 19:45 | Informe spam
Hola Jorge :-)

Mostrar la cita
Bien añade la siguiente linea de codigo :

.Tables(1).ParagraphFormat.Alignment = wdAlignParagraphCenter

y quita la que añadiste »

.Cells.VerticalAlignment = wdCellAlignVerticalCenter

de esa manera centraras el contenido de las celdas de la tabla 1 :-)

Y me he estado mirando el tema de la comparacion y combinacion de
documentos y creo eh? ya que he probado el codigo creando la funcion
FileExists y tal y tal ... y no me salia el mensaje perooo prueba a
poner [ ya que el mensaje es de formato ] prueba a poner la siguiente
linea las veces que se repita a lo largo del codigo, cambia »

DetectFormatChanges:=True

Por »

DetectFormatChanges:=False

Asi si la pones en Fasle no te detectara los cambios de formato y a ver
que ocurre -???-

y comentanos :-) !!

Saludos
Monica



Estado: A la Espera By Fermu

Tic-Tac-Tic-Tac...

» Now We are free [Enya]
» United states of love [ Westbam and the love commitee ]
» Nothing Else Matters [ Metallica ]

www.fermu.com
#10 Jorge Rendon
10/01/2008 - 23:07 | Informe spam
Hola monica;

Hola, estaba de vacaciones y por eso no te habia contestado hace rato, jeje.
Tu que nunca descansas????

"Tux" wrote:

Mostrar la cita
Con ese cambio funciona de maravilla y no pregunta cuando se esta combinando.
Gracias.

Jorge Rendon
Ads by Google
Search Busqueda sugerida