Generar informes y enviar por outlook

Tengo un pequeño problema que no puedo resolver y les comento a continuación.

Tengo una hoja llamada "Datos" y tengo las siguientes celdas:

E1                        F1

Volvo             volvo_Mant

toyota         toyota_Mant

....                      ...... (se van acumulando de acuerdo al ingreso de vehiculos)

Lo que quiero es una macro que me haga lo siguiente:

Cada fin de mes, genere automáticamente los informes en PDF, los guarde en D:/REPORTES y me los envíe a un correo outlook (Todas estas cosas, las he logrado hacer manualmente con macros) y luego me borre los datos que tiene cada hoja. Las hojas de la celda E:E se tiene que borrar con una macro que yo diseñe (macro1), y la celda F:F también se borran con otra macro que diseñe (Macro2).

Yo los hago manualmente con una macro, pero quiero que la macro me lo haga en forma automática cada ultimo día del mes.

1 respuesta

Respuesta
1

Quieres que lo genere en forma automática, o bien que ubicar un botón que cuando lo clicas

1.- Genere el pdf,

2.- El dpf lo pongo por correo (o la hoja)
3.- ¿Elimine los datos para volver a empezar
es así?

Hola, gracias por responder, no hay problema, por cual método se escoja, ya que el problema es que cada mes se agregan hojas en las dos columnas y hay que estar programando para esas hojas a cada momento. Gracias por tratar de apoyarme.

Prueba esta opcion haber si te sirve,

Me cometas que ya tienes las macros hechas, ya solo te resta poner esta rutina en thisworkbook, para que se ejecute cuando abras el archivo.

Sub ejemplo()
Dim mensaje As String
Fecha_sys = Date 'almacena hora del sistema
n = [j15] 'en J15 debe haber una formula =hoy()
mes = Month(Fecha_sys) + 1 'calcula el mes del sistema mas uno
año = Year(Fecha_sys)      'calcula el dia del año
mydate = DateSerial(año, mes, dia) - 1 ' le quita un dia para irte a fin de mes
MsgBox ("Hoy es : " & DateValue(n)) 'te avisa que dia es lol
'    ¿es hora de ejecutar el reporte?
     If n = mydate Then         'si hoy es igual al fin de mes...
     mensaje = MsgBox("¿Dejeas ejecutar el reporte?", vbYesNo + vbExclamation, "Confirma")  '... te pregunta si ehjecutas las macros
        If mensaje = vbNo Then ' si le dices que no...
        Exit Sub   ' se sale de la rutina
        Else       ' si le dices que si ejecuta las macros que ya tienes hechas
        'sugerencia una macro que guarde una copia del archivo con fecha de hoy
        Call macro_crea_respaldo
        Call macro_crea_pdf
        Call macro_que_adjunta_a_correo
        Call macro_que_borra_datos
        End If
    Else
        Exit Sub
    End If
End Sub

Hola Manuel, en verdad Gracias por tu apoyo, pero tengo un problema, no con tu macro, sino con el mio, te explico: Para yo, generar cada reporte, he creado un combobox, y voy generando cada hoja que me sale en el combobox, y tengo que revisar que los reportes estén completos. Por eso quiero que la macro genere los informes de acuerdo a la columna E y F en forma automática, aquí te envío las dos macros, para que lo veas.

Macro para la columna E

Macro para la columna F

Discúlpame, pero no soy muy diestro en esto de macros, apenas llevo dos semanas leyendo y practicando al respecto. (Por eso necesito bolitas y palitos :( )

¿Cómo te digo que soy nuevo crees poder compartirme un archivo de ejemplo?

Hola, si pudieras enviarme tu email, para enviarte el archivo, por favor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas