Envio de Mail

24/05/2005 - 18:51 por Ivan | Informe spam
Hola a todos:
Quisiera mandar la informacion de la hoja 2 por mail ( desde la hoja 1 ),
agardecere de antemano si alguin me da una ayudadita ya que nop se por donde
empezar.
Gracias

Preguntas similare

Leer las respuestas

#6 HMS
26/05/2005 - 00:32 | Informe spam
Tocayo!!!!
Mira, cuando la aplico me envia dos veces el mismo documento.
Y siempre me envia la hoja pero con la formulacion incluída.
Te agradezco la ayuda.

Saludos
HMS

"Héctor Miguel" wrote in message
news:
hola, tocayo !

... como hago para que envie la hoja pero con valores?... actualmente
envia la hoja con formulas.



la parte final de la macro podria quedar +/- como sigue:
[las lineas anteriores del codigo] ...
Worksheets(n_Hoja).Copy
Cells.Copy
Cells.PasteSpecial xlPasteValues
[a1].Select
Application.CutCopyMode = False
ActiveWorkbook.SendMail e_Direccion, t_Asunto
ActiveWorkbook.Close False
End Sub

saludos,
hector.

Respuesta Responder a este mensaje
#7 Héctor Miguel
26/05/2005 - 02:38 | Informe spam
hola, tocayo !

... envia dos veces el mismo documento. Y siempre me envia la hoja pero con la formulacion incluida.



disculpa la [poca] 'claridad' de mi mensaje anterior :-(
[habia que 'sustituir' el final de la macro... NO 'agregar' las lineas como 'nuevas'] :))
te paso las lineas 'completas' de la macro ;)
saludos,
hector.
en un modulo de codigo 'normal' ==Sub EnviarHoja()
Dim n_Hoja As String, e_Direccion As String, t_Asunto As String, Hoja As Object
PreguntaHoja:
n_Hoja = LCase(Application.Trim(InputBox("Indica la hoja a enviar.", "")))
If n_Hoja = "" Then Exit Sub
On Error Resume Next
Set Hoja = Sheets(n_Hoja)
If Hoja Is Nothing Then GoTo PreguntaHoja
Set Hoja = Nothing
PreguntaDireccion:
e_Direccion = LCase(Application.Trim(InputBox("Indica la direccion de correo.", "")))
If e_Direccion = "" Then Exit Sub
Select Case MsgBox("El envio se hara a la siguiente direccion:" & vbCr & e_Direccion & vbCr & _
"¿Deseas modificarla para continuar con el proceso?", vbYesNoCancel + vbQuestion)
Case vbYes: GoTo PreguntaDireccion
Case vbCancel: Exit Sub
End Select
PreguntaAsunto:
t_Asunto = LCase(Application.Trim(InputBox("Indica el asunto del mensaje.", "")))
If t_Asunto = "" Then Exit Sub
Worksheets(n_Hoja).Copy
Cells.Copy
Cells.PasteSpecial xlPasteValues
[a1].Select
Application.CutCopyMode = False
ActiveWorkbook.SendMail e_Direccion, t_Asunto
ActiveWorkbook.Close False
End Sub
Respuesta Responder a este mensaje
#8 HMS
26/05/2005 - 16:09 | Informe spam
Hola Tocayo.
Acabo de probar la macro, funciona bien, sin embargo tengo la situacion que
siempre manda el correo en un libro nuevo (que esta bien!!), pero el libro
que envia mantiene las formulas y si tiene macros tambien los envia.
Yo necesitaria que solamente envie una hoja, pero con los valores, que
mantenga el formato, pero sin las formulaciones.

Muchas gracias por tu valioso aporte.
Saludos
HMS

"Héctor Miguel" wrote in message
news:%
hola, tocayo !

... envia dos veces el mismo documento. Y siempre me envia la hoja pero
con la formulacion incluida.



disculpa la [poca] 'claridad' de mi mensaje anterior :-(
[habia que 'sustituir' el final de la macro... NO 'agregar' las lineas
como 'nuevas'] :))
te paso las lineas 'completas' de la macro ;)
saludos,
hector.
en un modulo de codigo 'normal' ==> Sub EnviarHoja()
Dim n_Hoja As String, e_Direccion As String, t_Asunto As String, Hoja As
Object
PreguntaHoja:
n_Hoja = LCase(Application.Trim(InputBox("Indica la hoja a enviar.",
"")))
If n_Hoja = "" Then Exit Sub
On Error Resume Next
Set Hoja = Sheets(n_Hoja)
If Hoja Is Nothing Then GoTo PreguntaHoja
Set Hoja = Nothing
PreguntaDireccion:
e_Direccion = LCase(Application.Trim(InputBox("Indica la direccion de
correo.", "")))
If e_Direccion = "" Then Exit Sub
Select Case MsgBox("El envio se hara a la siguiente direccion:" & vbCr &
e_Direccion & vbCr & _
"¿Deseas modificarla para continuar con el proceso?", vbYesNoCancel +
vbQuestion)
Case vbYes: GoTo PreguntaDireccion
Case vbCancel: Exit Sub
End Select
PreguntaAsunto:
t_Asunto = LCase(Application.Trim(InputBox("Indica el asunto del
mensaje.", "")))
If t_Asunto = "" Then Exit Sub
Worksheets(n_Hoja).Copy
Cells.Copy
Cells.PasteSpecial xlPasteValues
[a1].Select
Application.CutCopyMode = False
ActiveWorkbook.SendMail e_Direccion, t_Asunto
ActiveWorkbook.Close False
End Sub

Respuesta Responder a este mensaje
#9 Héctor Miguel
27/05/2005 - 05:52 | Informe spam
hola, tocayo !

... la macro, funciona bien, sin embargo... siempre manda el correo en un libro nuevo (que esta bien!!)
... pero el libro... mantiene las formulas y si tiene macros tambien los envia.
... necesitaria que solamente envie una hoja, pero con los valores, que mantenga el formato, pero sin las formulaciones.



'veo' que existen -otras- situaciones involucradas que no estaban 'contempladas' :))
1.- si el libro que se envia AUN contiene las formulas [que en mis pruebas NO sucede]...
-> que pasa si 'suspendes' -en la macro- el envio y el cierre... y 'revisas' el libro 'nuevo' que se genera ???
-> no esta 'funcionando' la instruccion ' ... xlPasteValues' de la macro ???
2.- si deseas que el libro que se envia 'tenga nombre' [distinto de 'Libro_n']...
podrias 'guardarlo'... 'enviarlo'... 'cerrarlo'... 'eliminarlo'... ;)
3.- al hacer la copia de la hoja a un libro nuevo... si tiene codigo en su modulo 'de clase'...
-obviamente- tambien es copiado ->al libro nuevo que se genera<- :-(
-> una -posible- alternativa seria eliminar los codigos del modulo de 'la hoja'... o mandar las macros a modulos 'normales' -?-
[ademas] si la hoja contiene 'objetos' que 'llaman' a macros [en cualquier tipo de modulo]...
-> [los vinculos/enlaces/señalamientos/... a las macros... NO las macros]... 'ahi se van' -tambien- :-(

comentas por cual punto 'iniciamos el ataque' ? :))
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida