Foro de Ayuda Excel | ||
| Soluciona tus problemas con Excel |
|
#1
| |||
| |||
| Hola: Quisiera seguir exponiendo algunas dudas que tengo con macros en excel. Ya algunos usuarios me han ayudado a configurar mi macro para generar una "base de datos" (simplemente un vaciado de nombres con e-mail) (aqui el tema: MACRO filtrado de datos) Ahora me encuentro con este problema, espero ser claro... * Tengo yo una hoja de calculo de excel, en ella vacio datos de personas con sus e-mails (Por ejemplo Columna A, fila 1 = Nombre; Columna B, fila 1 = e-mail; etc...). Tengo una lista bastante grande de "personas" delimitadas por algunas caracteristicas (Columna C, fila 1 = Profesion; Columna D, fila 1 = año de nacimiento; etc..). Quisiera hacer lo siguiente. Por medio de un autofiltro en el apartado "Profesión", selecciono solo a las "personas" que son "ingeniero" (por poner un ejemplo de profesión). En la pantalla se me muestran solo las coincidencias con "ingeniero". Hasta ahí todo perfecto. Ahora, me gustaria saber si existe alguna macro (o como diseñarla) para que se envié un e-mail (via "outlook", "incredimail" o cualquier otro gestor de e-mail) a esas personas. Digo incredimail, porque quizás se pueda hacer en cualquier otro gestor. Si alguien sabe como poder hacerlo, o que me oriente, se lo voy a gardecer muchisimo. Hasta pronto mostro |
|
#2
| |||
| |||
| solo asegurate que la dirección de correo este como hipervinculo,de tal suerte que solo tendras que dar un clik sobre el mismo para que se abra el Outlook
__________________ Salu2 ST |
|
#5
| |||
| |||
| El contenido interno de la macro es el siguiente: Sub PRINCIPAL() Call BUSCAULTIMAFILA(1, U1) If U1 > 65500 Then MsgBox "No existe información para enviar..." GoTo SALEPRIN End If For I = 4 To U1 ASUNTO = Sheets(1).Cells(I, 2) PARA = Sheets(1).Cells(I, 1) CUERPO = Sheets(1).Cells(I, 3) ADJUNTO = Sheets(1).Cells(I, 4) PIE = Sheets(1).Cells(I, 5) Call ENVIACORREO(ASUNTO, PARA, ADJUNTO, CUERPO, PIE) Next SALEPRIN: End Sub Sub ENVIACORREO(ASUNTO, PARA, ADJUNTO, CUERPO, PIE) Dim OBJETOLOOK As New Outlook.Application Dim OBJETOCORREO As MailItem OBJOLOOK.Open Set OBJETOLOOK = New Outlook.Application Set OBJETOCORREO = OBJETOLOOK.CreateItem(olMailItem) With OBJETOCORREO .To = PARA .Subject = ASUNTO .Body = CUERPO & Chr(13) & Chr(13) & Chr(13) & PIE If ADJUNTO <> "" Then .Attachments.Add ADJUNTO, olByValue, , "Attachment" ' insert attachment End If '.CC = CONCOPIAA .Send End With Set OBJETOCORREO = Nothing Set OBJETOLOOK = Nothing End Sub Sub BUSCAULTIMAFILA(HH, U) U = Sheets(HH).Range("A3").End(xlDown).Row End Sub |
| Herramientas | |
| Desplegado | |
| |