Word - Combinacion de correspondencia en archivos individuales por registro

 
Vista:
sin imagen de perfil
Val: 6
Ha disminuido su posición en 2 puestos en Word (en relación al último mes)
Gráfica de Word

Combinacion de correspondencia en archivos individuales por registro

Publicado por alejandro (3 intervenciones) el 20/11/2018 13:03:34
Hola a todos, tengo un gran problema:

Necesito generar combinaciones de correspondencias con los registros de un excel y que cada registro se guarde en un archivo independiente porque word por defecto te los genera todo en un archivo. Sé que está la aplicacion Merge & Split pero no me sirve porque necesito hacerlo con una macro para luego, desde un formulario de excel, con un boton llamar a esa macro y que me genere todos los archivos y me los guarde en una carpeta de manera automática.

Un saludo y gracias por vuestro tiempo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de wordexperto.com
Val: 2.194
Oro
Ha mantenido su posición en Word (en relación al último mes)
Gráfica de Word

Combinacion de correspondencia en archivos individuales por registro

Publicado por wordexperto.com (1181 intervenciones) el 20/11/2018 13:57:34
Hola Alejandro:
Adapta esta macro, que los convierte en pdf con el nombre del campo Correo. Cambia lo que necesites, el tipo de documento, el nombre...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Sub Merge_To_Individual_Files()
'Combina cada registro, en formato pdf, con el nombre del campo CORREO, a la carpeta en la que está este documento de combinación
'Creado por https://wordexperto.com/
Application.ScreenUpdating = False
Dim StrFolder As String, StrName As String, MainDoc As Document, i As Long, j As Long
Const StrNoChr As String = """*./\:?|"
Set MainDoc = ActiveDocument
With MainDoc
  StrFolder = .Path & Application.PathSeparator
  For i = 1 To .MailMerge.DataSource.RecordCount
    With .MailMerge
      .Destination = wdSendToNewDocument
      .SuppressBlankLines = True
      With .DataSource
        .FirstRecord = i
        .LastRecord = i
        .ActiveRecord = i
        If Trim(.DataFields("Correo")) = "" Then Exit For
        'StrFolder = .DataFields("Folder") & Application.PathSeparator
        StrName = .DataFields("Correo")
      End With
      On Error Resume Next
      .Execute Pause:=False
      If Err.Number = 5631 Then
        Err.Clear
        GoTo NextRecord
      End If
    End With
      For j = 1 To Len(StrNoChr)
        StrName = Replace(StrName, Mid(StrNoChr, j, 1), "_")
      Next
    StrName = Trim(StrName)
    With ActiveDocument
      .SaveAs FileName:=StrFolder & StrName & ".pdf", FileFormat:=wdFormatPDF, AddToRecentFiles:=False
      .Close SaveChanges:=False
    End With
NextRecord:
  Next i
End With
Application.ScreenUpdating = True
End Sub


https://wordexperto.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
sin imagen de perfil
Val: 6
Ha disminuido su posición en 2 puestos en Word (en relación al último mes)
Gráfica de Word

Combinacion de correspondencia en archivos individuales por registro

Publicado por Alejandro (3 intervenciones) el 21/11/2018 08:37:10
Perfecto, justo lo que buscaba. Muchas gracias por tu tiempo wordexperto. :D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 6
Ha disminuido su posición en 2 puestos en Word (en relación al último mes)
Gráfica de Word

Combinacion de correspondencia en archivos individuales por registro

Publicado por Alejandro (3 intervenciones) el 21/11/2018 14:11:14
Hola de nuevo wordexperto. ¿Si quisiera guardar los documentos en otra carpeta distinta a donde esta la plantilla de word qué debería modificar?

Un saludo y gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de wordexperto.com
Val: 2.194
Oro
Ha mantenido su posición en Word (en relación al último mes)
Gráfica de Word

Combinacion de correspondencia en archivos individuales por registro

Publicado por wordexperto.com (1181 intervenciones) el 22/11/2018 09:12:43
Son las líneas con StrFolder.
Yo lo que haría sería, simplemente, poner el documento de combinación en la carpeta de destino. Así no cambias nada.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Combinacion de correspondencia en archivos individuales por registro

Publicado por Humberto Pecina (1 intervención) el 21/04/2020 11:41:51
Hola WordExperto.

Soy un novato en esto de las macros, y este código es fenomenal.
¿Podrías apoyarme en decirme como podría ponerle el nombre del archivo con un texto fijo y combinarle datos variables de la base de datos que se combina en la correspondencia?

Por ejemplo:
Carta a Santa Claus - Polo Norte.pdf

En este ejemplo "Carta a" sería un fijo, "Santa Claus" y "Polo Norte" son dos datos extraídos del archivo de Excel.

Agradezco tu tiempo y ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Combinacion de correspondencia en archivos individuales por registro

Publicado por daniel (1 intervención) el 29/10/2021 23:59:08
Hola buenas tardes, me ha servido a la perfeccion en WIndows, pero en MAC no corre la macro, sabes que podria hacer
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar