Guardar en pdf segun el nombre de una celda

Solo consultas sobre macros y código VBA Excel.
Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Responder
claudio gatica
Miembro Frecuente
Miembro Frecuente
Mensajes: 12
Registrado: 01 Jun 2017 17:30

Guardar en pdf segun el nombre de una celda

Mensaje por claudio gatica » 24 Jul 2017 18:40

HOLA COMUNIDAD
mi pregunta es la siguiente, tengo el codigo de una macro en el cual me convierte a pdf una hoja en excel en la cual tengo comprobantes de pago o liquidaciones de sueldo, etc, me refiero a que me separa por rango y por nombre y los convierte a pdf segun el nombre de una celda (esval 1, esval 2, esval 3..,etc) la macro esta casi completa, lo unico que falta es que si el nombre se repite 2 veces me aparezcan 2 comprobantes de pago o liquidaciones en solo un PDF, asi sean 30, 100, o 1000 liquidaciones (pero con el mismo nombre, o sea que todos los "esval 1" sean en un solo PDF) en solo 1 PDF, luego otro nombre en otro PDF (independiente cuantos comprobantes de pagos sean) etc.
muchas gracias.
adjunto macro y archivo excel de ejemplo.

esta es la macro


Sub PDFS()
Dim ruta As String, nombre As String 'Definición tipos de variables
ruta = ThisWorkbook.Path & "\" 'Obtiene la ruta del archivo

Application.ScreenUpdating = False 'Evita centelleo de pantalla
Cells.Copy Sheets("Esclava").[A1] 'Copia la hoja activa(elsa) y la pega en hoja Esclava
Sheets("Esclava").Select 'Se posiciona en hoja Esclava


Do While [G9] <> "" 'Hacerlo mientras celda G9 sea distinto de blanco
nombre = [G9].Value 'Obtiene el nombre de celda G9
[A9:H70].ExportAsFixedFormat Type:=0, Filename:= _
ruta & nombre, IncludeDocProperties:=1, OpenAfterPublish:=0 'El rango A9:H70 lo guarda como PDF
[A9:H78].EntireRow.Delete 'Elimina el rango A9:H78.
Loop 'Repite el bucle
Cells.Clear 'Limpia hoja esclava
Application.ScreenUpdating = True
End Sub
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.



Responder