Excel 2007 macro:crear una carpeta con el nombre la fecha actual y guardar la hoja activa con el nombre de celdas G7+F4 y enviar

"para Dante amor" .. Hola te llego mi mail

Excel 2007 macro:crear una carpeta con el nombre la fecha actual y guardar la hoja activa con el nombre de celdas G7+F4 y enviar

1 respuesta

Respuesta
2

 H o l a:

Te anexo la macro para crear la carpeta, guardar la hoja y enviar por outlook

Sub GuardaryEnviar()
'
' Macro para crear carpeta, guardar una hoja y enviar por outlook
'
    ActiveSheet.Range("$F$19:$F$211").AutoFilter Field:=1, Criteria1:="<>"
    Range("F4:G5").Select
    ActiveCell.FormulaR1C1 = "=NOW()"
    Range("F4:G5").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Range("F7").Select
    Application.CutCopyMode = False
   'Por.Dante Amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set l1 = ThisWorkbook
    Set h1 = l1.ActiveSheet
    ruta = "C:\Documents and Settings\Administrador\Escritorio\PEDIDOS LAMA\"
    'ruta = "C:\trabajo\"
    carp = "pedidos " & Format(Date, "dd-mm-yyyy")
    nomb = h1.[G7] & " " & Format(h1.[F4], "dd-mm-yyyy-hh-mm-ss")
    '
    rut2 = ruta & carp
    If Dir(rut2, vbDirectory) = "" Then
        MkDir rut2
    End If
    '
    h1.Copy
    Set l2 = ActiveWorkbook
    l2.SaveAs Filename:=rut2 & "\" & nomb & ".xls", _
        FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False
    'l2.SaveAs rut2 & "\" & nomb & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    l2.Close
    '
    'Enviar por outlook
    Set h2 = l1.Sheets("MAIL")
    Set dam = CreateObject("outlook.application").createitem(0)
    dam.To = h2.Range("D16").Value
    dam.CC = h2.Range("D18").Value & ";" & h2.Range("D20").Value & ";" & h2.Range("D22").Value
    dam.Subject = nomb          'Asungo
    dam.Body = Range("G15")     '"Cuerpo del mensaje"
    dam.Attachments.Add rut2 & "\" & nomb & ".xls"
    dam.Send 'El correo se envía en automático
    'dam.Display 'El correo se muestra
    MsgBox "Hoja Guardarda y enviada por Outlook", vbInformation, "CREAR CARPETA Y GUARDAR HOJA"
End Sub

' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

¡Gracias! Dante funciona perfecto.

Te envíe por mail para ver si se pueden agregar macros para enviar por gmail y otra para que solo guarde.

Como siempre dante brindando soluciones

Muchas gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas