Excel - Ayuda Macro envío de Correo

   
Vista:

Ayuda Macro envío de Correo

Publicado por David T (22 intervenciones) el 08/08/2008 15:38:19
Buen día, espero me puedan ayudar ya que no encuentro la forma de solucionar mi problema, lo que hace la macro que les presento a continuación es enviar un correo desde excel por medio de Lotus Notes, el detalle es que viene un For - Next y lo aplica para todas las Sheets que vengan en el archivo, lo que quiero es eliminar el For - Next y que únicamente se aplique en la Sheet activa, ya intente varias formas pero debido a mi bajo conocimiento no lo he podido lograr,
Espero alguien me pueda apoyar a solucionar mi problema..
Muchas Gracias....

Sub Enviar_Correo()
Const EMBED_ATTACHMENT As Long = 1454
Const stPath As String = "C:Documents and Settings"
Dim stSubject As String
stSubject = "Prueba"
Dim vaMsg As Variant
mensaje = "prueba"
vaMsg = "Buen Día !"
Dim vaRecipients As Variant
Dim stFileName As String
Dim noSession As Object
Dim noDatabase As Object
Dim noDocument As Object
Dim noEmbedObject As Object
Dim noAttachment As Object
Dim stAttachment As String
Dim wbBook As Workbook
Dim wsSheet As Worksheet
On Error GoTo Error_Handling
Application.ScreenUpdating = False
Set wbBook = ActiveWorkbook

'*************************************************

For Each wsSheet In wbBook.Worksheets
With wsSheet
.Copy
stFileName = .Name
End With
stAttachment = stPath & "" & stFileName & ".xls"
With ActiveWorkbook
.SaveAs stAttachment
.Close
End With
'vaRecipients = .Range("A2:A" & lnLastRow).Value
vaRecipients = InputBox("Destinatario")
Set noSession = CreateObject("Notes.NotesSession")
Set noDatabase = noSession.GETDATABASE("", "")
If noDatabase.IsOpen = False Then noDatabase.OPENMAIL
Set noDocument = noDatabase.CreateDocument
Set noAttachment = noDocument.CreateRichTextItem("stAttachment")
Set noEmbedObject = noAttachment.EmbedObject(EMBED_ATTACHMENT, "", stAttachment)
With noDocument
.Form = "Memo"
.SendTo = vaRecipients
.Subject = stSubject
.Body = vaMsg
.SaveMessageOnSend = False
.PostedDate = Now()
.Send 0, vaRecipients
End With
Kill stAttachment
Next wsSheet

*****************************************************

MsgBox ("El e-mail se ha Enviado Exitosamente."), vbInformation
ExitSub:
Set noEmbedObject = Nothing
Set noAttachment = Nothing
Set noDocument = Nothing
Set noDatabase = Nothing
Set noSession = Nothing
Exit Sub
Error_Handling:
MsgBox "Error Número: " & Err.Number & vbNewLine & _
"Descripcion: " & Err.Description, vbOKOnly
Kill stAttachment
Resume ExitSub
Application.ScreenUpdating = True
End Sub

Saludos....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda Macro envío de Correo

Publicado por Abraham Valencia (2418 intervenciones) el 08/08/2008 19:19:48
Recuerda que si necesariamente vas a trabajar con macros, pues, al menos "algo" de VBA debes saber y/o leer. En todo caso, a groso modo no es dificl lo que mencionas pero, no es cuestion de modificar ESA macro, sino de hacer la tuya propia, ya que no neceistas tanto codigo para lo que mencionas

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda Macro envío de Correo

Publicado por David T (22 intervenciones) el 08/08/2008 20:09:05
Aprecio mucho tu comentario Abraham, sé muy bien que en ocaciones algunas personas preguntan cosas muy básicas, claro, tomando en cuenta mi nivel, y también sé que mi pregunta es muy básica, tomando en cuenta tu nivel de conocimiento. Es muy bueno tu consejo el de leer-aprender de VB, si me atreví a preguntar fue porque almenos hice un "gran esfuerzo" y no lo había logrado, te comento que en este momento pude solucionar mi problema, pero quiero hacerte un comentario, si tienes interés de ayudar como lo haz estado demostrando, deberías de dar un mejor consejo y no ser tan sarcástico, como por ejemplo evaluar hasta donde llega la pregunta realizada en este foro, desde un simple "texto condicional" hasta una macro compleja y en base a eso dar tu respuesta/comentario. En mi caso "creo" que esta macro es algo complicada y si se tratara de únicamente leer y aplicar, creo que no exisitiría este foro ya que no habría dudas ni preguntas.
Esto que te comento no es un ataque a tus respuestas, es simplemente un comentario que espero no lo tomes a mal..

Gracias por todas tus respuestas..
Saludos...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda Macro envío de Correo

Publicado por Abraham Valencia (2418 intervenciones) el 08/08/2008 21:09:42
No te preocupes, no me lo tomo a mal, pero ten en cuenta varias cosas:

- Si leyeras un poco mas de VBA, podrias entender mejor el codigo que tu mismo has enviado, y entendiendolo sabrias que necesitas y que no, de esa macro , y veraz que en la practica ni al 50% del codigo llega, con lo que reafirmo lo de construir tu propia macro era lo ideal

- Si tu hubieses construido tu propia macro, o como tu querias hacer, reconstruido esa macro que envias, pues, ya ahi si estarias intentandolo y sobre ese avance tuyo te podriamos ayudar; y tu estas pidiendo que modifiquemos esa macro para tu necesidad... es decir, estas pidiendo que te hagamos todo.. .y esa tampoco es la intencion de los foros

- Recordemos que no es que exista "una macro" para cada cosa

- Para terminar, nunca dejemos de lado la busqueda por internet, a veces encontramos respuestas que nos ayudaran:

http://www.excelkb.com/?cNode=1X5M7A

http://www.excelkb.com/article.aspx?id=10081&cNode=1X5M7A

http://www.excelkb.com/article.aspx?id=10083&cNode=1X5M7A

http://www.excelkb.com/article.aspx?id=10080&cNode=1X5M7A

http://www.rondebruin.nl/mail/templates.htm

OJO, tampoco es la idea que otros busquen por nosotros ;)

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Macro envío de Correo

Publicado por Antonio Abel Hernandez Garcia (1 intervención) el 30/12/2008 01:32:23
.To = "aahg@grupotaxs07.com"
.CC = ""
.BCC = ""
.Subject = "MEX"
.Body = "Send of Information: "
.Attachments.Add ActiveWorkbook.FullName
.Send
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar