Combinar

04/05/2005 - 08:08 por Antonio Ceacero | Informe spam
Hola grupo.

Necesito combinar una carta modelo, usando datos Excel (o tabla de word),
pero que cada combinación genere un documento nuevo con un nombre
determinado por uno de los campos de la tabla de datos. Por ejemplo:

Nombre Num. Ciudad Nombre Documento
Antonio García 9988999 Barcelona agarcia.doc
Gabriel López 8989890 Madrid glopez.doc

De forma que al combinar se generen 2 documentos: agarcia.doc y glopez.doc,
usando una carta modelo.

Alguien sabe de alguna utilidad, script VB o similar que lleve a caboe sta
operación?

Gracias por adelantado.

Preguntas similare

Leer las respuestas

#1 Pe
04/05/2005 - 14:40 | Informe spam
Antonio Ceacero a exposé le 04/05/2005 :
Hola grupo.

Necesito combinar una carta modelo, usando datos Excel (o tabla de word),
pero que cada combinación genere un documento nuevo con un nombre
determinado por uno de los campos de la tabla de datos. Por ejemplo:

Nombre Num. Ciudad Nombre Documento
Antonio García 9988999 Barcelona agarcia.doc
Gabriel López 8989890 Madrid glopez.doc

De forma que al combinar se generen 2 documentos: agarcia.doc y glopez.doc,
usando una carta modelo.

Alguien sabe de alguna utilidad, script VB o similar que lleve a caboe sta
operación?

Gracias por adelantado.



http://groups.google.es/groups?hl=e...26tab%3Dwg

Ceci est une signature automatique de MesNews.
Site : http://www.mesnews.net
Respuesta Responder a este mensaje
#2 Marta PM [MVP Office]
04/05/2005 - 23:12 | Informe spam
Te he respondido al e-mail, pero procura mirar las respuestas que te han dado en el
foro.

Marta PM
Saúdos/Saludos
MVP Office

(Si quieres escribirme ya sabes lo que no quiero)
__________
La información contenida en este mensaje se proporciona "TAL CUAL", sin garantías
explícitas ni implícitas, y no otorga derecho alguno. Usted asume cualquier riesgo al
poner en práctica lo recomendado o sugerido en el presente mensaje.

¿Quieres saber que es un MVP?
http://mvp.support.microsoft.com/

"Antonio Ceacero" escribió en el mensaje
news:e7rUD%
Hola grupo.

Necesito combinar una carta modelo, usando datos Excel (o tabla de word),
pero que cada combinación genere un documento nuevo con un nombre
determinado por uno de los campos de la tabla de datos. Por ejemplo:

Nombre Num. Ciudad Nombre Documento
Antonio García 9988999 Barcelona agarcia.doc
Gabriel López 8989890 Madrid glopez.doc

De forma que al combinar se generen 2 documentos: agarcia.doc y glopez.doc,
usando una carta modelo.

Alguien sabe de alguna utilidad, script VB o similar que lleve a caboe sta
operación?

Gracias por adelantado.



Respuesta Responder a este mensaje
#3 Antonio Ceacero
05/05/2005 - 09:50 | Informe spam
Marta,

Ya estuve "jugando" con la respuesta que me dieron,

Pego a continuación la EXCELENTE solución que me ha proporcionado Marta, la
he probado y funciona perfectamente.

Hola:

No es tan sencillo como tú lo planteas. Plantearlo es fácil, llevarlo a la
práctica, para mí no ha sido tan sencillo, sobre todo teniendo en cuenta que
NO domino las macros y que estoy aprendiendo poco a poco (demasiado poco a
poco diría yo)

Bien, empecemos. Necesitamos el documento combinado. Partimos de ahí.
Combina como siempre y te generará todo en un archivo.

El siguiente paso es crear un archivo en Excel o en Word, como desees con
los nombres de documento que desees. Tanto si los creas en Excel como en
Word NO crees un encabezado sino directamente los nombres. Debes crearlos de
igual forma a como tienes los nombres en la combinación, es decir, si el
primer nombre es Antonio García el primer fichero a crear sería agarcia.doc,
el segundo Jesús Lopez pues sería jlopez.doc, etc.

Supongo que ya tienes los nombres de archivo creados por lo que sólo se
trataría de exportar esa lista a un nuevo archivo. Si no los tienes creados
ya es sencillo crearlos en Excel. Llamaremos a ese archivo
nombresarchivo.xls o nombresarchivo.doc.

Bien, llegados a este punto y situándonos en el documento generado por la
combinación de correspondencia tenemos que ejecutar la siguiente macro, que
es una adaptación de una macro de Doug Robbins para un proceso similar. Para
copiarla en tu archivo abre el Editor de Visual Basic, mediante Alt+F11 y
copiala allí:



La única modificación es que partimos del documento "modelo" sin llegar a
combinarlo (sin generar la combinación). La primera parte de la macro
ejecuta la combinación.


Sub Guardar()
' Vamos a crear varios documentos, uno para cada uno de los registros de la
combinación
With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
' Aquí es realmente donde la vamos a indicar que nos lo guarde con el nombre
indicado y en el directorio indicado
Dim Source As Document, oblist As Document, DocName As Range, DocumentName
As String
Dim i As Long, doctext As Range, target As Document
Set Source = ActiveDocument
' Aquí indicamos la ruta del documento en el que hemos creado el directorio
de nombres 'de archivo. Debes indicar la ruta completa entre paréntesis.
Documents.Open FileName:="c:\varios\mailingombres.doc"
Set oblist = ActiveDocument
Counter = 1
For i = 1 To oblist.Tables(1).Rows.Count
Set DocName = oblist.Tables(1).Cell(i, 1).Range
DocName.End = DocName.End - 1
' Aquí indicas el directorio de destino de los archivos creados. Lo que ves
en azul es la ruta al directorio en el que deseas guardar la combinación
DocumentName = "c:\varios\mailing\ " & DocName.Text
Set doctext = Source.Sections(i).Range
doctext.End = doctext.End - 1
Set target = Documents.Add
target.Range.FormattedText = doctext
target.SaveAs FileName:=DocumentName
target.Close
Next i
ActiveDocument.Close
ActiveDocument.Close _
SaveChanges:=wdDoNotSaveChanges
End Sub


"Marta PM [MVP Office]" escribió en el
mensaje news:
Te he respondido al e-mail, pero procura mirar las respuestas que te han


dado en el
foro.

Marta PM
Saúdos/Saludos
MVP Office

(Si quieres escribirme ya sabes lo que no quiero)
__________
La información contenida en este mensaje se proporciona "TAL CUAL", sin


garantías
explícitas ni implícitas, y no otorga derecho alguno. Usted asume


cualquier riesgo al
poner en práctica lo recomendado o sugerido en el presente mensaje.

¿Quieres saber que es un MVP?
http://mvp.support.microsoft.com/

"Antonio Ceacero" escribió en el mensaje
news:e7rUD%
> Hola grupo.
>
> Necesito combinar una carta modelo, usando datos Excel (o tabla de


word),
> pero que cada combinación genere un documento nuevo con un nombre
> determinado por uno de los campos de la tabla de datos. Por ejemplo:
>
> Nombre Num. Ciudad Nombre Documento
> Antonio García 9988999 Barcelona agarcia.doc
> Gabriel López 8989890 Madrid glopez.doc
>
> De forma que al combinar se generen 2 documentos: agarcia.doc y


glopez.doc,
> usando una carta modelo.
>
> Alguien sabe de alguna utilidad, script VB o similar que lleve a caboe


sta
> operación?
>
> Gracias por adelantado.
>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida