Sobre una archivo excel con macro se puede general uno si macro

Tengo un archivo con una macro que me maneja un numero y la fecha, cuando lo envío por mail a otra persona y lo abre se le cambia el numero colocado y a esa persona que le envíe le queda el informe con otro numero.

Como puedo solucionar el tema que al enviar mi archivo se anule una macro

Para dante amor

1 respuesta

Respuesta
1

¿Quieres qué en el nuevo archivo se copien todas las hojas?

Solamente algunas hojas, ¿cuáles?

Desde luego la hoja "numero de parte" esa hoja ya no se incluiría, ya que solamente la ocupa la macro.

Quieres que se envíe por correo en automático, ¿tienes qué decirme de dónde obtengo el correo del destinatario? Qué poner en el asunto y qué poner en el cuerpo del correo.

Solamente una copia de la misma hoja que tiene "numero de parte"

Si por correo automático y la dirección es [email protected]

Asunto: parte diario

Cuerpo: se eleva parte y pronostico.

Para. Dante amor

No entendí

"Solamente una copia de la misma hoja que tiene "numero de parte""

¿Cómo se llama la hoja que quieres enviar?

parte

para dante amor

Te anexo la macro para enviar la hoja "parte" por correo.

Sub enviar_hoja_()
'por.Dante amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    nombre = ThisWorkbook.Path & "\parte"
    Sheets("parte").Copy
    ActiveWorkbook.SaveAs nombre
    n = ActiveWorkbook.FullName
    Set dam = CreateObject("outlook.application").createitem(0)
        dam.to = "[email protected]"
        dam.Subject = "parte diario"
        dam.body = "se eleva parte y pronostico."
        Dam. Attachments. Add n
        Dam. Send
    ActiveWorkbook. Close
End Sub

Saludos.Dante Amor

No olvides valorar la respuesta.

Te anexo la macro para enviar por gmail

Sub enviar_hoja_()
'por.Dante amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    nombre = ThisWorkbook.Path & "\parte"
    Sheets("parte").Copy
    ActiveSheet.DrawingObjects("1 Rectángulo").Delete
    ActiveWorkbook.SaveAs nombre
    n = ActiveWorkbook.FullName
    ActiveWorkbook.Close
    Dim Email As CDO.Message
    correo = "[email protected]"
    passwd = "pwd"
    Set Email = New CDO.Message
    Email.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
    Email.Configuration.Fields(cdoSendUsingMethod) = 2
    With Email.Configuration.Fields
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = CLng(465)
        .Item("http://schemas.microsoft.com/cdo/" & "configuration/smtpauthenticate") = Abs(1)
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = correo
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = passwd
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
    End With
    With Email
        .To = "[email protected]"
        .From = correo
        .Subject = "parte diario"
        .TextBody = "se eleva parte y pronostico."
        .AddAttachment n
        .Configuration.Fields.Update
        On Error Resume Next
        .Send
    End With
    If Err.Number = 0 Then
        MsgBox = "El mail se envió con éxito"
    Else
        MsgBox = "Se produjo el siguiente error: " & Err.Number & " " & Err.Description
    End If
    Set Email = Nothing
End Sub

Saludos.Dante Amor

No olvides valorar la respuesta.

Para enviar por gmail

Sub enviar_hoja_()
'por.Dante amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    nombre = ThisWorkbook.Path & "\parte"
    Sheets("parte").Copy
    ActiveSheet.DrawingObjects("1 Rectángulo").Delete
    ActiveWorkbook.SaveAs nombre
    n = ActiveWorkbook.FullName
    ActiveWorkbook.Close
    Dim Email As CDO.Message
    correo = "[email protected]"
    passwd = "emaco2014"
    Set Email = New CDO.Message
    Email.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
    Email.Configuration.Fields(cdoSendUsingMethod) = 2
    With Email.Configuration.Fields
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = CLng(465)
        .Item("http://schemas.microsoft.com/cdo/" & "configuration/smtpauthenticate") = Abs(1)
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = correo
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = passwd
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
    End With
    With Email
        .To = "[email protected]"
        .From = correo
        .Subject = "parte diario"
        .TextBody = "se eleva parte y pronostico."
        .AddAttachment n
        .Configuration.Fields.Update
        On Error Resume Next
        .Send
    End With
    If Err.Number = 0 Then
        MsgBox "El mail se envió con éxito"
    Else
        MsgBox "Se produjo el siguiente error: " & Err.Number & " " & Err.Description
    End If
    Set Email = Nothing
End Sub

Saludos.Dante Amor

No olvides valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas