Envio por e-mail

23/11/2004 - 12:15 por Vicente | Informe spam
Como puedo en esta funcion indicar el nombre del fichero que sea los datos
que hay en una celda determinada. Por ejemplo el nombre de un cliente "
Vicente Garcia Perez.xls" como nombre del archivo.

Sub EnviarHojaPorCorreoElectrónico()
ActiveSheet.Copy
ActiveWorkbook.SendMail Recipients:="vicente@safta.com", Subject:="Envío
Pedido de Excel"
ActiveWorkbook.Close savechanges:=False
End Sub

gracias.

Preguntas similare

Leer las respuestas

#6 Ren
23/11/2004 - 17:42 | Informe spam
Tengo Outlook 2000 y Windows 2000 y la instrucción "SendMail" me produce
errores de depuración.
Preimero, ¿sabe alguien como arreglar esto?. Segundo, hay alguna
alternativa a este comando?

Por su ayuda, gracias a todos.

Saludos desde el fin del mundo.

"Lao_España" escribió en el mensaje
news:OPRU9$
Hola Vicente.

Adjunto te envío un codigo que yo utilizo para envio de hojas.

Te permite enviar una hoja de un libro, poner la dirección de correo a la
que la quieres enviar y ponerle el nombre a la hoja + la fecha del


sistema,
para esto último graba la hoja, la envía y luego la elimina. espero que te
sirva.

Un saludo

Sub EnvioHoja()
Dim wb As Workbook
Dim strdate As String
Dim hoja As String
Dim EnviarA As String
Dim NombreFichero As String

strdate = Format(Now, "dd-mm-yy")

hoja = InputBox("Introducir nombre de la hoja a enviar", "Nombre de Hoja")
EnviarA = InputBox("dirección de Correo Electronico", "Enviar a:")
NombreFichero = InputBox("Nombre del fichero a enviar", "Nombre Fichero")

Application.ScreenUpdating = False

Sheets(hoja).Copy

Set wb = ActiveWorkbook

With wb
.SaveAs ("c:\enviohojas\" & NombreFichero & " " & strdate & ".xls")
.SendMail EnviarA
.ChangeFileAccess xlReadOnly
Kill ("c:\enviohojas\" & NombreFichero & " " & strdate & ".xls")
.Close False
End With

Application.ScreenUpdating = True

End Sub


"Vicente" escribió en el mensaje
news:
> Como puedo en esta funcion indicar el nombre del fichero que sea los


datos
> que hay en una celda determinada. Por ejemplo el nombre de un cliente "
> Vicente Garcia Perez.xls" como nombre del archivo.
>
> Sub EnviarHojaPorCorreoElectrónico()
> ActiveSheet.Copy
> ActiveWorkbook.SendMail Recipients:="",
Subject:="Envío
> Pedido de Excel"
> ActiveWorkbook.Close savechanges:=False
> End Sub
>
> gracias.


Respuesta Responder a este mensaje
#7 Lao_España
25/11/2004 - 10:42 | Informe spam
Vicente tendrías que añadir la siguiente línea.

Quitar:
NombreFichero = InputBox("Nombre del fichero a enviar", "Nombre Fichero")
Poner:
NombreFichero = Worksheets.Name

Creo que con esto te funcionara.


"Vicente" escribió en el mensaje
news:
Gracias de antemano, pero como puedo darle el nombre del archivo el valor


de
una celda de la hoja??.

Gracias

"Lao_España" escribió:

> Hola Vicente.
>
> Adjunto te envío un codigo que yo utilizo para envio de hojas.
>
> Te permite enviar una hoja de un libro, poner la dirección de correo a


la
> que la quieres enviar y ponerle el nombre a la hoja + la fecha del


sistema,
> para esto último graba la hoja, la envía y luego la elimina. espero que


te
> sirva.
>
> Un saludo
>
> Sub EnvioHoja()
> Dim wb As Workbook
> Dim strdate As String
> Dim hoja As String
> Dim EnviarA As String
> Dim NombreFichero As String
>
> strdate = Format(Now, "dd-mm-yy")
>
> hoja = InputBox("Introducir nombre de la hoja a enviar", "Nombre de


Hoja")
> EnviarA = InputBox("dirección de Correo Electronico", "Enviar a:")
> NombreFichero = InputBox("Nombre del fichero a enviar", "Nombre


Fichero")
>
> Application.ScreenUpdating = False
>
> Sheets(hoja).Copy
>
> Set wb = ActiveWorkbook
>
> With wb
> .SaveAs ("c:\enviohojas\" & NombreFichero & " " & strdate & ".xls")
> .SendMail EnviarA
> .ChangeFileAccess xlReadOnly
> Kill ("c:\enviohojas\" & NombreFichero & " " & strdate & ".xls")
> .Close False
> End With
>
> Application.ScreenUpdating = True
>
> End Sub
>
>
> "Vicente" escribió en el mensaje
> news:
> > Como puedo en esta funcion indicar el nombre del fichero que sea los


datos
> > que hay en una celda determinada. Por ejemplo el nombre de un cliente


"
> > Vicente Garcia Perez.xls" como nombre del archivo.
> >
> > Sub EnviarHojaPorCorreoElectrónico()
> > ActiveSheet.Copy
> > ActiveWorkbook.SendMail Recipients:="",
> Subject:="Envío
> > Pedido de Excel"
> > ActiveWorkbook.Close savechanges:=False
> > End Sub
> >
> > gracias.
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida