Hola, super bueno el video. Solo que para que el cuerpo del correo salga en los correos a enviar, se debe cambiar el "Object" por "Body". De esta manera también sale el cuerpo del correo. Muchas gracias!
Gracias por el aporte, Excelente!!! Sugerencias: - Para definir el rango variable de correos a enviar he insertado una variable, preguntando cuántos correos quiero enviar y así para mí es más fácil: Dim numerodecorreos As Integer numerodecorreos = ImputBox("¿cuántos correos se van a enviar?") For i = 2 To 1 + numerodecorreos - En el cuerpo del mensaje "Object" no funciona, lo he sustituido por "Body" para que inserte el texto en el cuerpo del mensaje: .Body = Range ("columna" & i).Value - Al final, después de Next se puede insertar un mensaje de confirmación de que todo ha salido con éxito: MsgBox "El mail con los ficheros adjuntos fueron enviados con éxito" Un saludo.
Muchas gracias Juan Carlos. Muy interesante el aporte! Pedir el número de correos o en general de qué tamaño quieres que sea el bucle lo he pensado en otros ejercicios pero al final nunca lo hemos puesto. En el próximo que me encaje lo pongo. Sobre el mensaje de el mail se ha enviado con éxito dos apuntes: 1. Si son cientos de mails puede ser un poco coñazo 2. Lo suyo sería poner a quién se lo ha enviado. Es decir: MsgBox "El mail con los ficheros adjuntos a" & Range ("A"&i).value & " fueron enviados con éxito" Y otra cosa, por si te interesa, hay varios vídeos adicionales a este en el canal. Te los dejo por aquí: El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel": ua-cam.com/video/ULTbreSw2bU/v-deo.html El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅" ua-cam.com/video/bXhPxlzNKRQ/v-deo.html Si los queréis mandar desde gmail "Cómo ENVIAR 📧 CORREOS MASIVOS por GMAIL con 📎 ADJUNTOS desde EXCEL - Curso de Excel Avanzado" ua-cam.com/video/EXZPKkEFoIQ/v-deo.html
Mil gracias, nos ha venido Fenomenal!! Sobre todo a una compañera que es la que tiene que enviar los PDF, yo le he adaptado la macro a su trabajo, ya que he tenido que combinarlo con el envío de un logo :) Y muy bien explicado!
Excelente aporte, mil gracias me ayudo mucho el tutorial y es bastante concreto como practico. 10 de 10 Nota, Por un momento senti que no jalaba pero eran errores mios de escritura, jajaja
Muchas gracias por el video, me resulto perfectamente, aprovechando la instancia consultar si se puede enviar varios documentos adjuntos, por ejemplo (FACTURA, COTIZACION, ORDEN DE COMPRA y OTROS MAS) .....se deben agregar mas columnas de "Attachments" y concatenarlos con "&" en la? ya que deben ir todos los formatos a un mismo correo, ya que debo además guardarlos en la misma carpeta de documentos por lo que entiendo..... de ante mano muy agradecido por su aporte y mis felicitaciones!
Gracias Edward! Si, lo puedes hacer como dices o duplicar directamente la línea de .Attachments.Add Range añadiendo tantas columnas como quieras. El código añadirá un adjunto, luego el otro y el otro...
Hola @AprendizdeExcel, me va genial la Macro, lo único es que tengo varias cuentas de Outlook asociadas, esta Macro va a buscar la que tengo como mía principal y yo necesitaría enviar los correos desde otra cuenta que comparto con otr@s compañer@s. ¿Cómo podría hacerlo? Muchas gracias por todo siempre!! Te has convertido en imprescindible para mí 😜
@@davidmartinez8859 Hola David. Si, lo que hice fue crear un nuevo perfil que sólo tiene la cuenta que me interesa. Cuando abro outlook me pregunta qué perfil quiero usar y escojo el que necesito, así cuando tengo que hacer el envío de mails masivos sólo encuentra la cuenta que yo he elegido. En mi caso siempre es la misma, si quieres que cada vez envie los correos desde distintas direcciones, tendrás que crear tantos perfiles como necesites y elegirlo cada vez. Espero haberme explicado bien. Un saludo
Cool, me funcionó y me sorprende demasiado ya que es el 1er video que me funciona referente a Macro y lo que me encanta es que comparte la macro que utilizo para que te guíes durante el proceso. Pero tengo una consulta, he visualizado que al último el ASUNTO no funciona ya que si también se visualiza al final del video todo esta perfecto pero lo único que no funciona es el ASUNTO tu apoyo por fis.
Gracias por los comentarios! ¿NO te adjunta los asuntos? ¿Es eso lo que te ocurre? Si está bien copiada la macro quizás sea un problema de la URL. ¿Has comprobado que está bien? Copiala y pegala en un explorador a ver que hace.
Muchísimas gracias. Me ha venido de maravilla. La explicación es clarísima y me ha servido de gran ayuda. Enhorabuena por ser tan buen formador. Un saludo.
Estimado muchas gracias por el tutorial, fue muy entendible, consulta si en el caso quiero enviar mas de un archivo adjunto como podría hacer?, gracias
Ponlo en la siguiente columna e incrementa el código en esa dirección. Algo así: .Attachments.Add Range("F" & i).Value .Attachments.Add Range("G" & i).Value
ME FUNCIONO perfecto gracias por la informacion una clase magistral saludos sigue asi hermano , lo que seria bueno seria que se enviaran los correos automaticamente cuando ya esten montados ya que si son mas de 100 correos hay que darle a cada uno ENVIAR pero obviamente con este modo se ahorrra mucho tiempo jejej saludos
Hola Aprendiz, te ganaste un suscriptor más, por la cantidad de videos que tienes, si en algún momento dispones de tiempo para hacer otro vídeo sobre cómo enviar mensajes masivos a WhatsApp utilizando Excel y VBA. Espero que puedas hacerlo, sería genial en verdad... Felicidades amig Saludos desde Perú
Hola Gracias por compartir sus conocimientos Al principio del video habla de una macro para impresion de facturas en pdf; me interesa ese video para adaptarlo a la generacion e impresión de estado de cuenta por cliente, no lo pude ubicar en los que tiene publicado en su canal gracias
Hola Alveiro, gracias por pasarte por el canal. Para la próxima vete a la sección de vídeos del canal y arriba a la derecha hay una especie de lupa, eso es un buscador. Debería estar en este y otros canales. El vídeo es este: ua-cam.com/video/OsASXikKbzU/v-deo.html Además lo coloqué en una tarjeta, así que debería estar en el desplegable del vídeo que te aparece arriba a la derecha cuando lo ves justo con otras sugerencias Salu2
Muchas gracias, en términos generales funciona muy bien, hay un detalle, el registro de la primera fila no lo está encontrando, es decir el primer email no lo está creando, los demás hacia abajo si los crea sin problema, ya miraré por qué sucede, de resto, sensacional herramienta. Reitero mis más sinceros agradecimientos. Saludos especiales.
Gracias por el video, que variable puedo utilizar para elegir el correo que mande el e-mail Tengo mi correo principal, pero quiero mandarlo desde un correo compartido que tengo en Outlook Gracias
Hola, me ha ayudado mucho tu video, pero tengo 2 cuentas configuradas en mi outlook y la que necesito usar no es la principal...como puedo hacer?...como defino la variable de la cuenta que quiero usar??
Es muy buen video gracias por compartir tus conocimientos, pero quisiera saber algo, por wue el cuerpo del correo no se coloca? Pasa tambien en el video 😊
Excelente Video! Me resultó muy útil... Quisiera hacerle una consulta... Si yo preciso utilizar otro gestor de correos, como thunderbird u Outlook express, se utilizaría la misma Macro con alguna variante o es otra distinta?
Con este código es posible que te de problemas. Pruébalo y nos cuentas Para cualquier tipo de correo necesitas la librería CDO y luego los parámetros de cada servidor (deberías buscarlos) Te dejo un ejemplo con gmail ua-cam.com/video/EXZPKkEFoIQ/v-deo.html
hola buenas, excelente video, pero me gustaria hacer 2 preguntas, la 1era.... que hacer para que me salga una pregunta antes de enviar como por ejemplo ESTAS SEGURO QUE DESEAS CONTINUAR? y presionar SI/NO mas que nada en caso de presionar la macro por error..... y lo otro, que me gustaría añadir otra barra con adjuntos, ya que tengo trabajadores a los cuales debo enviar informacion de salarios y cotizaciones en archivos distintos.... Muchas Gracias por el videooo
Hola Nacho, puedes pedir un MsgBox o asignarlo a una columna. Lo metes a una variable y con un if que compruebe si es verdadero o falso. Algo así: ---------------- chequeo = MsgBox("¿Quieres enviar mail el archivo? " & Range("A" & i).value, vbYesNo + vbQuestion, "Aprendiz de Excel") If chequeo = vbYes Then (aquí tu código para enviar el archivo) Else End If -------------- Para dos adjuntos ponlo en la siguiente columna e incrementa el código en esa dirección. Algo así: .Attachments.Add Range("F" & i).Value .Attachments.Add Range("G" & i).Value
Guau, increíble lo bien explicado que está y la de tiempo que me vas a ahorrar, mil gracias, de verdad. Solamente quería preguntarte si habría alguna forma de añadir dos archivos adjuntos en vez de uno. Gracias! 😊
Ponlo en la siguiente columna e incrementa el código en esa dirección. Algo así: .Attachments.Add Range("F" & i).Value .Attachments.Add Range("G" & i).Value
Hola. Me funcionó perfecto. Solo me gustaría si me puedes ayudar, tengo 4 correos guardados en mi cuenta de outlook pero quiero poder escoger dentro del listado masivo que solo ciertos correos se envien desde otro dominio pero el mensaje es el mismo para todos, como puedo hacer que la direccion que recoge dentro de una celda sea el correo desde el que se envia Ojala me puedas ayudar
No tengo varios correos y no puedo probar, pero con este código deberías poder Prueba a vincularlo a una celda oAccount.DisplayName = "ponaqui@tucorreo.es"
Millones de gracias. Un vídeo muy, muy práctico! La macro, al ejecutarla, me da un error: me dice que hay un subíndice fuera de rango. Y al depurar el problema me destaca en amarillo lo siguiente: Sheets("Mails").Select No sé muy bien qué tengo que hacer...
Muchas gracias! me ayudó mucho, la única duda y que no me resulta es el contenido del mail, que tengo que cambiar para que me aparezca el object en el mail
muchas gracias por la capacitacion, super clara y expedita, solo me queda la duda en como hacerlo para copiar a mas personas, intenté con .CC = Range........, pero no aparecia la nueva copia en el correo para enviar.
Excelente Explicación disculpa una consulta si quiero colocar mi logo o mi firma digital como lo hago, y como hago para que se envié automáticamente si darle enviar gracias.
Hola Richar, para la segunda pregunta revisa el vídeo a partir del 6:35 Para la firma revisa este vídeo a ver si es lo que necesitas: ua-cam.com/video/ULTbreSw2bU/v-deo.html
Muy buen video, muchas gracias por compartir tus conocimientos, pero tengo una consulta, si en la cuenta de Outlook tengo varias cuentas de correo, como hago para que se elija la cuenta de donde se va a remitir el correo.
No se puede, por eso hice otros dos vídeos que te permiten editar la firma desde el código: El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel": ua-cam.com/video/ULTbreSw2bU/v-deo.html El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅" ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
Genial, el video muchisimas gracias. Sin embargo, cuando pulso enviar, me sale error y me señala esto de la macro " For i = 2 To Range("A" & Rows.Count).End(x1Up).Row", como si hubiese algún fallo en ese comando
Te doy una idea para un fututro proyecto, enviar correos masivos pero con un checklist, que te permita elegir a cual destinatario enviar o no, si la necesidad de estar eliminando las filas, para mantener la misma hoja.
Gracias por el consejo! La forma de resolverlo sería añadir una variable ligada a la columna donde tengas el control y un condicional que compruebe antes de enviar
Hola! excelente aporte. 👏 tengo una duda. ¿Cómo puedo personalizar el saludo a cada destinatario en particular? es decir, que en Body la primera linea sea un saludo que diga algo como: Hola! estimado ("Nombre de la Persona asociada a la dirección del e-mail"). Buenas xxxxxxx... después que venga el Body..
Hola, unas preguntas: ¿se puede hacer que cuando le des a enviar correos, se marque el día que has enviado el correo en una columna al lado? ¿Y también se podría hacer que se envíen sólo si pone pendiente?, es decir, que tú en una columna vaya enviado y pendiente, y que si está pendiente se envíe el correo al darle al botón y que si está enviado no haga nada. Muy buen vídeo.
Puedes poner la fecha y hora que se envía. Por ejemplo, si lo quieres en la columna J sería algo así: Range("J" & i).Value = Now A tener en cuenta que si vuelves a correr la macro con la misma i pisará la hora. Para enviar solo determinados correos en función de si una columna pone 1, verdadero o pendiente, pon una estructura de control. Básicamente es un If, que si se cumple la condición lo envíe y si no que no haga nada. Te recomiendo, encarecidamente, que veas el tutorial de bucles y estructuras de control que hicimos: ua-cam.com/video/KLAYln9BXMk/v-deo.html
Muchas gracias por el video muy bien explicado, Me funciona a la perfección, tengo una pregunta , espero me puedas ayudar!!. En un libro tengo 2 hojas ejemplos (1ra hoja con nombre Alumnos, 2da hoja con nombre Docentes) y creé la macro para la 1ra hoja y todo OK , pero para la 2da hoja también tengo una lista de correos por enviar , como haría en ese caso¿? , ya que tengo creada la macro en ese mismo libro , y fue creada para la 1ra hoja. como lo haría para la 2da hoja¿? . Quedo atenta a tu respuesta. Gracias!!.
Hola Astrhi, gracias por comentar. Hay dos formas de solucionar lo que planteas. La primera hacer dos macros distintas y luego una que llame a las dos. Podrían llamarse MailAlumnos y MailDocentes En ese caso tu macro sería: Sub Enviar mails() Call MailAlumnos Call MailDocentes End Sub La ventaja de llamar macros es que cuando son muchas o tienes código entre medias se puede trabajar mejor. En este caso que es sencillo, se trata de replicar el bucle justo antes de seleccionar la hoja. Es decir, a partir de esta línea que seleccione la hoja Docentes Sheets("Docentes").Select For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
Me funciona, muchas gracias por el contenido, quisiera saber ¿Cómo puedo hacer para controlar desde que correo hago los envíos? Ya que, tengo más de 1 correo vinculado a mi Outlook. Nuevamente gracias, saludos.
Me alegro que te funcione! No tengo dos correos vinculados con los que probar, prueba con esta línea y me cuentas: oAccount.DisplayName = "ponaqui@tucorreo.es"
Hola! realmente me sirvió mucho la macro y el video explicativo. Me gustaría en vez de texto mandar una imagen en el cuerpo del mail, sabrias como hacerlo? sería la misma imagen para todos los mails. Desde ya te agradezco
Hola Mariana, gracias por tu comentario. Tengo dos vídeos adicionales subidos al canal que pueden resolver tu duda. En uno se sube una imagen como firma (se puede poner dentro del cuerpo) y en otro una tabla del propio Excel. Están puestos en la descripción. Te los dejo por aquí: El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel": ua-cam.com/video/ULTbreSw2bU/v-deo.html El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅" ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
Buenos días. Muchísimas gracias, me ha resultado muy útil y me ha gustado tu forma de explicar el proceso. Una pregunta. Tengo dos cuentas activas en Outlook, la personal y una génerica que usamos en mi departamento, siguiendo tus pasos me envía los correos desde la personal. ¿Como puedo hacer para que me envíe los mails desde la cuenta genérica y no desde la personal?. Muchas gracias, un saludo.
El video muy instructivo, Me he dado cuenta de que el titulo y el asunto lo tienes girado en la macro y el titulo (cuerpo del mensaje) no te sale en la prueba que haces. He hecho algunas pruebas pero no doy con la solución. A ver si me puedes echar un cable. Gracias
En la descripción del vídeo te enlazo más vídeos de la misma serie. Te los dejo por aquí por si te ayudan a desbloquear el problema: El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel": ua-cam.com/video/ULTbreSw2bU/v-deo.html El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅" ua-cam.com/video/bXhPxlzNKRQ/v-deo.html Si los queréis mandar desde gmail "Cómo ENVIAR 📧 CORREOS MASIVOS por GMAIL con 📎 ADJUNTOS desde EXCEL - Curso de Excel Avanzado" ua-cam.com/video/EXZPKkEFoIQ/v-deo.html
Hola buenos días/tardes, gracias por hacer estos videos! hice este concretamente para mi empresa para enviar las nominas y funciona perfectamente, una cosa que te quería preguntar (ojalá la respondas por favor): quiero hacer y no se si se puede que, teniendo una hoja de excel con los cuadrantes de todos los trabajadores juntos en donde las columnas son sus nombre y las filas los días del mes, mueva los datos que hay en cada columna y me los pegue en una plantilla que tengo echa de word, es muy dificil y no se si se puede y ahorraria mucho tiempo de trabajo, me harias un gran favor
Hola Adrian, me alegro que te haya funcionado. ¿Has probado a vincular la tabla del Excel al Word? Te dejo un vídeo que lo explica: ua-cam.com/users/shortsl4WUn1LrSs0
@@AprendizdeExcel puede servir si, te ahorra mucho trabajo, gracias por eso! pero yo lo que decía es otra cosa que a lo mejor será mucho mas difícil, me explico para que me entiendas: Tengo el Excel de cuadrantes de todos los trabajadores "sucio" por así decirlo y de ese Excel tengo una plantilla en Word creada por mí que la voy rellenando para cada trabajador (nombre, mes, cada día el turno que hacen...). Si vinculo la tabla de Excel al Word como me has dicho, aparece en el Word como si fuera una imagen y tienes que guardar y hacer eso por cada tabla pero estoy renunciando a mi plantilla. Hay alguna forma de hacer eso mismo (por ejemplo haciendo clic a un botón) que te pase sus datos (nombre, mes, cada día el turno que hacen...) a un archivo Word con mi plantilla y te lo guarde, así con todos los trabajadores? perdón por el texto que por aquí es muy difícil de explicar.
Adrian, si hay forma de todo hay forma. Yo tengo un archivo que al lanzar la macro, entre otras cosas, abre un PPT va a determinadas diapositivas, cambia unas tablas, cambia unos textos, lo guarda y lo cierra. El problema es que quizás esa sea una solución compleja para lo que realmente necesitas y te puede dar dolor de cabeza entrar en esa programación. No tengo claro exactamente cómo tienes montado tu sistema. Deduzco que tienes una tabla con todos los cuadrantes y de esa con algún filtro sacas la tabla de cada trabajador. Eso lo trasladas a tantos Word cómo trabajadores tengas Si así fuera yo vincularía cada Word de trabajador a su tabla, de tal manera que cada vez que se abra se actualice. Después lanzaría una macro que fuera abriendo los Words, se actualizaran y cerraran (aquí podría añadirle que se envíen por correo). Después de abrir la librería de Word un código como este te debería funcionar: Sub ActualizarGuardarCerrarWord() Dim objWord As Object Set objWord = CreateObject("Word.Application") 'Abre el archivo de Word objWord.Documents.Open "Aquí tu Word.docx" 'Actualiza los vínculos objWord.ActiveDocument.Fields.Update 'Guarda y cierra el archivo de Word objWord.ActiveDocument.Save objWord.ActiveDocument.Close Cierra Word objWord.Quit End Sub Eso abre un Word, si tienes una lista de trabajadores podrías hacer un bucle para sacar el resto de archivos. El problema de esto es que potencialmente te puede dar problemas si el nivel es bajo. Mi consejo es que la macro corra sobre el propio Excel y lo saque en PDF. Te dejo una idea, por si quieres investigar por ahí: ua-cam.com/video/OsASXikKbzU/v-deo.html
@@AprendizdeExcel Después de ver el video que me has dicho tengo una idea que puede ser mas facil: y si hago la plantilla que tengo en Word en Excel y le digo que coja los datos de cada tabla del trabajador como en tu video con las facturas y el botón? no sería mas facil? pero como hago que coja los datos del otro Excel de cada tabla de trabajador? perdón por tantas preguntas 😊
Buenos días y gracias por tus videos. Nos ayudan mucho. Tengo un problemilla que no se solucionar. Me gustaría añadir una imagen al cuerpo del email enviado con la macro de gmail. He visto tu video donde lo haces desde Outlook, y he tratado de adaptar la macro de outolook a la de Gmail, pero no hay manera. ¿cómo quedaría la macro de envío de email desde Gmail, con la posibilidad de adjuntar imagen al cuerpo del mensaje (no como adjunto)? MUCHAS GRACIAS
Hola Pepe. La solución podría estar en subir previamente la imagen a un servidor público y adjuntar la url de esta. Podría ser con un código similar a este: En un código HTMLBody con formatos sería algo así: .HTMLBody = "" & "" & Range("E" & i).Value & "" & _ "" & "Aprendiz de Excel" & "" & _ "" & "Calle Desengaño 23" & " " & _ "UA-cam Aprendiz" & ""
Muy bueno el video. una consulta, se puede agregar una sentencia para que compruebe si el adjunto existe y en caso que no exista omita la carga del adjunto?
Si, con la función Dir te comprueba si existe o no el archivo. Podrías integrar en el bucle que te compruebe previamente si existe el adjunto y te lo incluya o no. Te lo deja separado como si fuera una macro independiente y te lo adaptas tú a las necesidades, pero básicamente este código comprueba si existen los archivos y en caso de ser así lo pega en la columna de al lado: Sub ComprobarAdjuntos() For i = 2 To Range("A" & Rows.Count).End(xlUp).Row Archivo = Dir(Range("F" & i).Value) If Archivo = "" Then Range("G" & i).Value = "" Else Range("G" & i).Value = Range("F" & i).Value End If Next End Sub
Excelente Video, ¿como se puede incluir en el cuerpo del correo una tabla(con un mismo formato y diseño), que vaya modificando fechas dentro de la tabla dependiendo del destinatario?
Buen día, una consulta, si quisiera agregar en el cuerpo del correo, una imagen distinta para cada correo, cómo sería? Y cuántos correos se puede enviar al día disponiendo de una cuenta gratuita? Gracias!!
Buenas muchas gracias por el video, una pregunta por ejemplo si en mi lista de personas a quienes les voy a mandar correo quiero aplicar un filtro para mandar correos por área digamos, como puedo hacerle para que la macro me lea solo los que aparecen y no todos los correos al momento de darle click en enviar
Hola Victor, depende de tu estructura de datos. Si es tal cuál el ejemplo en el que tienes cargados todos los correos y estos enlazados a grupos, puedes usar una columna adicional en la que con un buscarv te valide si está o no en el grupo que deseas mandar. Si está que ponga un 1 y si no que ponga un cero. Sobre esa columna aplicas un condicional que diga que envíe el mail si es 1 y si no que pase al siguiente correo
Buenas, muchas gracias por el video. Sería de gran ayuda mostrar como solucionar lo que comenta @victorhugohernandez9041, para solo enviar email a aquellas personas seleccionadas o filtradas del listado. Muchas gracias@@AprendizdeExcel
Muchas Gracias, muy bien explicado, pero me sale un error y se pone amarillo en esta parte For i = 2 To Range("A" & Rows.Count).End(xlUp).Row y no entiendo que debo hacer
Hola Lis, es probable que el número de correos lo esté calculando mal y por eso te da error ese bucle. Está pensado para empezar en la línea 2 y hasta el número de correos que tienes. ¿Cuántos tienes? Es probable que estés haciendo una prueba sin correos? Otro problema posible es que los esté contando en otra hoja donde no tengas datos Como opciones te propongo que lo ejecutes en modo Paso a Paso por instrucciones en el menú depuración (F8) Y si no puedes probar tb a poner directamente un valor fijo para que corra igualmente. Es decir: For i = 2 to 5
Por cada fila es un mail distinto. Pon en cada fila el destinatario, asunto y adjunto que quieras. En el vídeo se mandan adjuntos diferentes por cada mail. Salu2
Hola, Gracias por el video, muy bien explicado y sencillo. Quisiera hacerte una pregunta, al mandar el mensaje no me adjunta el texto, es decir, lo envio y me aparece todo correcto menos el texto o mensaje que se quiere mandar. ¿Cómo tengo que hacer para que en el mail aparezca el texto? muchisimas gracias:)
Hola buenas tardes!!! Excelente video muy útil. Ahora bien cuando quiero correr la macro. La misma se detiene y me tira el error 438 diciendo que el objeto no lo admite. Sabrás decirme que puede ser y como solucionarlo? Muchas gracias!! Has conseguido otro seguidor más!!!!!
@@AprendizdeExcel Hola!! Me fijé y tengo la librería del Outlook v15 y la línea de error es la de setmail=App.CreateItem(0). Desde ya muchas gracias por tu ayuda
No tengo esa versión para comprobar cómo te podría funcionar, pero en principio esa línea no debería ser un problema de tu versión de librería (siempre que la tengas marcada). ¿Es posible que tengas varios perfiles dentro de outlook?
Muy buen video y suscrito. Buscaba algo como esto, pero quiero ir un poco mas allá. Tengo un userform con un listbox en el que se cargan los datos de una tabla. El caso es que quiero abrir outlook ( display) y que en un solo correo, como copia oculta.
Se me olvidaba, puedo preparar los emails, pero me salen uno a uno y a veces los registros filtrados son demasiados. Necesito enviar en un solo email todos los usuarios y no uno a uno. Gracias
Hola, bienvenido al canal! Entiendo que quieres que en un solo mail se manden correos a varias direcciones (copia oculta o como sea), ¿es así? En la casilla correspondiente pon los correos separados por ";" (punto y coma). Si los traes de una tabla hazte una concatenación previa. Salu2
Buenas! Que buen vídeo! Lo estoy intentando, pero cuando le doy a enviar, me da error en: Sheets ("Mails") . Select No sé si sabes por qué puede ser. Un saludo y muchas gracias!!
Estimado Muchas gracias por el video, mi duda es la siguiente, se me manda todo el correo de manera correcta, pero el archivo no se adjunta en el mismo, y esta puesto de buena manera la ruta de acceso, sera algun inconveniente con outlook?
Prueba a quitar la línea On Error Resume Next para ver dónde se para Si se para a la hora de adjuntar es que el archivo genera un problema Ya sea porque no lo encuentra (dirección está mal), está abierto, se pasa de tamaño o algo. De no marcar ese error es posible que esté leyendo en otra columna
Hola Aprendiz de Excel, primero enhorabuena por ese dominio del Excel, segundo me ha dejando de funcionar la Macro, específicamente con los adjuntos. Me dice error 440, No se pueden agregar los datos adjuntos, falta el origen de los datos! AUXILIOOOO!!!
Gracias por el comentario! Por concretar. ¿Te funciona antes y te ha dejado de funcionar? Si es así, te funciona sin adjuntos? Si las dos son si lo normal es que tengas un problema con los adjuntos. Primero comprueba que no hayas insertado una columna o eliminado y eso esté fallando. Después comprueba que existen los archivos (¿has podido moverlos de carpeta?
@@AprendizdeExcel Gracias por tu pronta respuesta. Efectivamente, antes me funcionaba y me ha dejado de funcionar, no he movido los adjuntos , no he insertado columnas solo me funciona la macro si le pongo la comilla ' a la línea de los adjuntos en el código de VBA.
Está claro que fallan los adjuntos. Existe una posibilidad, que al examinar el código por lo que sea lo hayas modificado (metido un caracter adicional donde no debas). Poco probable. Creo que no puede adjuntar los archivos. La forma de comprobarlo es ejecutarlo paso por paso con F8 (menu depuración) y ahí intenta ver qué valor coge la variable del adjunto. Si es la correcta copia ese adjunto y pégalo en un explorador tuyo a ver si puede abrirlo. Comprueba que no estuviera abierto el archivo a adjuntar, por si fuera eso
Muchas gracias por el aporte, me sale un error al ejecutar el código me señala la "i" en el For indicando que no se ha definido una variable. Sabe como puedo solucionar el error
Hola ! Muchas gracias por tu video. No se porque me aparece " Error de Comando, No se ha definido el tipo definido por el usuario. ¿Que puede estar pasando?
Hola! Muchas gracias! Imagino que querrás una firma con enlace final. Te dejo un código y te explico un poco. En vez de body pon esto: .HTMLBody = " " & _ "" & _ "" & "Tu nombre" & "" & _ "Tu enlace " & _ " " & _ "" Si quieres máss líneas lo que debes agregar o quitar esta línea: "" & "Tu nombre" & "" & _ Podrías poner nombre, teléfono y luego el enlace a la web
hice varias pruebas y los correos si se envían y si llegan a los correos que estoy usando de prueba, sin embargo me llega un correo al correo del remitente que dice "No se puede localizar a los destinatarios siguientes" y sale el correo al que estoy enviando ¿A que podría deberse esto?
Hola, me parece muy bueno el video, pero quisiera saber como puedo ver el video de como generar las facturas y exportarlas a pdf, pero desde el comienzo he revisado en tu canal, pero no lo encuentro, me ayudarias bastante el que me envies el link, gracias y saludos excelente video.
Hola Leo, en principio debería estar en las tarjetas del vídeo. Te dejo un link por aquí: ua-cam.com/video/OsASXikKbzU/v-deo.html Básicamente es tener montada una base de datos y sobre ella sacar los datos con buscarv. El vídeo no explica con detalle eso y se centra en la impresión. Básicamente es un bucle que se ejecuta en función del rango que tiene la validación de datos de la celda Echa un vistazo y me comentas
Si os ha gustado este vídeo podéis ver más en el Curso de Excel experto
cutt.ly/pjRGyKh
muchas gracias por compartir tu conocimiento, funciona excelente!!
¿De casualidad vendes tus cursos por algún otro medio? ¿Es decir por udemy o algo por el estilo?
@@evalilia4647 No, lo siento Eva.
Tienes las listas de reproducción gratuitas ordenadas por niveles y temáticas
Como puedo hacer si quiero agregar una imagen al cuerpo del correo?
Hola, super bueno el video. Solo que para que el cuerpo del correo salga en los correos a enviar, se debe cambiar el "Object" por "Body". De esta manera también sale el cuerpo del correo.
Muchas gracias!
Hi. No me llega ni el cuerpo ni el adjunto. Cual de los object dices?
Ya resolvi gracias a tu observacion. Gracias!
Gracias, andaba buscando esta modificación ya que no aparecía el cuerpo del mensaje
Gracias Por tu aporte... no me salia el mensaje que queria enviar...🤩
Gracias por el aporte, Excelente!!!
Sugerencias:
- Para definir el rango variable de correos a enviar he insertado una variable, preguntando cuántos correos quiero enviar y así para mí es más fácil:
Dim numerodecorreos As Integer
numerodecorreos = ImputBox("¿cuántos correos se van a enviar?")
For i = 2 To 1 + numerodecorreos
- En el cuerpo del mensaje "Object" no funciona, lo he sustituido por "Body" para que inserte el texto en el cuerpo del mensaje:
.Body = Range ("columna" & i).Value
- Al final, después de Next se puede insertar un mensaje de confirmación de que todo ha salido con éxito:
MsgBox "El mail con los ficheros adjuntos fueron enviados con éxito"
Un saludo.
Muchas gracias Juan Carlos. Muy interesante el aporte!
Pedir el número de correos o en general de qué tamaño quieres que sea el bucle lo he pensado en otros ejercicios pero al final nunca lo hemos puesto. En el próximo que me encaje lo pongo.
Sobre el mensaje de el mail se ha enviado con éxito dos apuntes:
1. Si son cientos de mails puede ser un poco coñazo
2. Lo suyo sería poner a quién se lo ha enviado. Es decir:
MsgBox "El mail con los ficheros adjuntos a" & Range ("A"&i).value & " fueron enviados con éxito"
Y otra cosa, por si te interesa, hay varios vídeos adicionales a este en el canal. Te los dejo por aquí:
El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel":
ua-cam.com/video/ULTbreSw2bU/v-deo.html
El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅"
ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
Si los queréis mandar desde gmail "Cómo ENVIAR 📧 CORREOS MASIVOS por GMAIL con 📎 ADJUNTOS desde EXCEL - Curso de Excel Avanzado"
ua-cam.com/video/EXZPKkEFoIQ/v-deo.html
Mil gracias, nos ha venido Fenomenal!! Sobre todo a una compañera que es la que tiene que enviar los PDF, yo le he adaptado la macro a su trabajo, ya que he tenido que combinarlo con el envío de un logo :)
Y muy bien explicado!
Me alegro mucho Alicia!.
Automatizar procesos ahorrará tiempo os evitará errores.
Gracias por comentarlo 😊
Parcero, Muuuuuuchas gracias Dios y la Virgen y San José te bendigan
Gracias Rosa!
Salu2
Vale talento. Me has salvado casi la vida profesional, porque llevo varios días tratando de hacer esto con la Version de 2013. Saludos
Genial!
Excelente aporte, mil gracias me ayudo mucho el tutorial y es bastante concreto como practico.
10 de 10
Nota, Por un momento senti que no jalaba pero eran errores mios de escritura, jajaja
Genial!
Me alegro que te haya funcionado. Gracias por comentarlo 😉
amigo eres un crack muchas gracias excelente explicación sin darse muchas vueltas llegastes al objetivo en tan solo 8:00 min
Gracias por verlo hasta el final y comentarlo Ricardo.
Salu2
Hola buen dia,
Esta perfecto el video solo una pregunta para que funcione con el nuevo outlook?
Es de lo mejor, excelente solución para lidiar el tedio de enviar tantos correos con adjuntos
Gracias por comentar Denis
Me alegro que te haya funcionado
Un saludo 😉
@@AprendizdeExcel me funcionó en office 2010, super útil la herramienta, si se me ocurre alguna función que le pueda mejorar el diseño, le comparto
Gracias!
Gracias por compartir tu conocimiento. Se agradece enormemente tu generosidad, seguí paso a paso la macro que dejaste: me resultó, genial.
Me alegro que te haya funcionado
Gracias por comentarlo ;)
Muchas gracias por el video, me resulto perfectamente, aprovechando la instancia consultar si se puede enviar varios documentos adjuntos, por ejemplo (FACTURA, COTIZACION, ORDEN DE COMPRA y OTROS MAS) .....se deben agregar mas columnas de "Attachments" y concatenarlos con "&" en la? ya que deben ir todos los formatos a un mismo correo, ya que debo además guardarlos en la misma carpeta de documentos por lo que entiendo..... de ante mano muy agradecido por su aporte y mis felicitaciones!
Gracias Edward!
Si, lo puedes hacer como dices o duplicar directamente la línea de .Attachments.Add Range añadiendo tantas columnas como quieras.
El código añadirá un adjunto, luego el otro y el otro...
genial, me funciono, me ha resuelto un problema muy grande, mil gracias. me costo un poquito pero bien.
Gracias Yolanda!
Me alegro que te haya funcionado 😉
Gracias por compartir esta valiosa información, se ahorra muchísimo tiempo enviando correos masivos de esta manera.👍👍
Muchas gracias!!
Y gracias por comentarlo 😉
Hola @AprendizdeExcel, me va genial la Macro, lo único es que tengo varias cuentas de Outlook asociadas, esta Macro va a buscar la que tengo como mía principal y yo necesitaría enviar los correos desde otra cuenta que comparto con otr@s compañer@s. ¿Cómo podría hacerlo? Muchas gracias por todo siempre!! Te has convertido en imprescindible para mí 😜
Hola Sandra, sabes si hay forma de lograrlo?
@@davidmartinez8859 Hola David. Si, lo que hice fue crear un nuevo perfil que sólo tiene la cuenta que me interesa. Cuando abro outlook me pregunta qué perfil quiero usar y escojo el que necesito, así cuando tengo que hacer el envío de mails masivos sólo encuentra la cuenta que yo he elegido. En mi caso siempre es la misma, si quieres que cada vez envie los correos desde distintas direcciones, tendrás que crear tantos perfiles como necesites y elegirlo cada vez. Espero haberme explicado bien. Un saludo
Mi agradecimiento por compartir esta informacion
Estimado señor, me suscribi y le agradezco porque me funciono a la maravilla. Un abrazo y mucha bendiciones
Genial!
Me alegro que te haya funcionado
Gracias por comentarlo 😉
Excelente, amigo, muy sencillo y practico, tienes un 20/10
Muchas gracias Jorge!! ☺️☺️
Excelente video, muy claro todo. Muchas gracias
Gracias!
Lo resumo en una sola palabra "Excelente" y sin mucho codigo, lo felicito...
Gracias!!
Cool, me funcionó y me sorprende demasiado ya que es el 1er video que me funciona referente a Macro y lo que me encanta es que comparte la macro que utilizo para que te guíes durante el proceso. Pero tengo una consulta, he visualizado que al último el ASUNTO no funciona ya que si también se visualiza al final del video todo esta perfecto pero lo único que no funciona es el ASUNTO tu apoyo por fis.
Gracias por los comentarios!
¿NO te adjunta los asuntos? ¿Es eso lo que te ocurre?
Si está bien copiada la macro quizás sea un problema de la URL. ¿Has comprobado que está bien? Copiala y pegala en un explorador a ver que hace.
Muchísimas gracias. Me ha venido de maravilla. La explicación es clarísima y me ha servido de gran ayuda. Enhorabuena por ser tan buen formador. Un saludo.
Muchas gracias Manuela.
Me alegro que te haya funcionado👏👏
Comentarios como el tuyo son los que ayudan a seguir con esto 💪
Excelente!!!, muchas gracias, ha sido de gran ayuda
Gracias!!
Estimado muchas gracias por el tutorial, fue muy entendible, consulta si en el caso quiero enviar mas de un archivo adjunto como podría hacer?, gracias
Ponlo en la siguiente columna e incrementa el código en esa dirección. Algo así:
.Attachments.Add Range("F" & i).Value
.Attachments.Add Range("G" & i).Value
ME FUNCIONO perfecto gracias por la informacion una clase magistral saludos sigue asi hermano , lo que seria bueno seria que se enviaran los correos automaticamente cuando ya esten montados ya que si son mas de 100 correos hay que darle a cada uno ENVIAR pero obviamente con este modo se ahorrra mucho tiempo jejej saludos
corrijo el comentario ya vi que el comando SEND estaba desabilitado por la (') ya lo active y se envian automatico mil gracias excelente contenido
Genial! 👏👏👏
Me alegro que te haya funcionado. Gracias por comentarlo!
@@AprendizdeExcel gracias a ti estaré revisando todo tu contenido! De mucha utilidad y fácil de entender
Gracias Jhonny!!
Hola Aprendiz, te ganaste un suscriptor más, por la cantidad de videos que tienes, si en algún momento dispones de tiempo para hacer otro vídeo sobre cómo enviar mensajes masivos a WhatsApp utilizando Excel y VBA.
Espero que puedas hacerlo, sería genial en verdad...
Felicidades amig
Saludos desde Perú
Gracias Adán!
Lo apunto en los vídeos pendientes de hacer.
Salu2
Hola Gracias por compartir sus conocimientos
Al principio del video habla de una macro para impresion de facturas en pdf; me interesa ese video para adaptarlo a la generacion e impresión de estado de cuenta por cliente, no lo pude ubicar en los que tiene publicado en su canal
gracias
Hola Alveiro, gracias por pasarte por el canal.
Para la próxima vete a la sección de vídeos del canal y arriba a la derecha hay una especie de lupa, eso es un buscador. Debería estar en este y otros canales.
El vídeo es este:
ua-cam.com/video/OsASXikKbzU/v-deo.html
Además lo coloqué en una tarjeta, así que debería estar en el desplegable del vídeo que te aparece arriba a la derecha cuando lo ves justo con otras sugerencias
Salu2
Muchas gracias, rapido, directo al punto
Gracias Rafaela 😉
Muchas gracias, en términos generales funciona muy bien, hay un detalle, el registro de la primera fila no lo está encontrando, es decir el primer email no lo está creando, los demás hacia abajo si los crea sin problema, ya miraré por qué sucede, de resto, sensacional herramienta. Reitero mis más sinceros agradecimientos. Saludos especiales.
Me alegro! Muchas gracias!
Salu2
Excelente el video, me ha servido mucho...
Me alegro!
Gracias por comentarlo 😉
Gracias por este video, me he ahorrado mucho tiempo.
Me alegro Germán!
Gracias por comentarlo 😉
Super bueno el video, muy bien explicado. En verdad muchas gracias
Gracias Pablo! Por ver el vídeo y por tus comentarios
Un saludo ☺
Excelente explicación muchas gracias, me sirvió mucho
Gracias Victor ☺
Salu2
Dios mío me salvaste!!!
🤗
SUSCRITO!!!! muchas gracias voy a ver todo tus videos, para poder aprender mas!
Gracias Michel!
Me alegro que te haya gustado el vídeo.
Nos vemos por el canal 😉
Gracias por el video, que variable puedo utilizar para elegir el correo que mande el e-mail
Tengo mi correo principal, pero quiero mandarlo desde un correo compartido que tengo en Outlook
Gracias
Lograste resolver?, podrias compartit
Hola, me ha ayudado mucho tu video, pero tengo 2 cuentas configuradas en mi outlook y la que necesito usar no es la principal...como puedo hacer?...como defino la variable de la cuenta que quiero usar??
Muchas gracias por el aporte
Gracias! 😊
Es muy buen video gracias por compartir tus conocimientos, pero quisiera saber algo, por wue el cuerpo del correo no se coloca?
Pasa tambien en el video 😊
No se coloca?
A qué te refieres con eso?
Formatos?
Eres muy bueno con la macros y las otras partes del video era que dejes los links para acceder a los mismos
¿Cómo?
Muchas gracias por enseñarnos, funciona perfectamente, está muy bien explicado. Un saludo.
Muchas gracias Juan Manuel
Me alegro que te haya servido 😉
Excelente Video! Me resultó muy útil... Quisiera hacerle una consulta... Si yo preciso utilizar otro gestor de correos, como thunderbird u Outlook express, se utilizaría la misma Macro con alguna variante o es otra distinta?
Con este código es posible que te de problemas.
Pruébalo y nos cuentas
Para cualquier tipo de correo necesitas la librería CDO y luego los parámetros de cada servidor (deberías buscarlos)
Te dejo un ejemplo con gmail
ua-cam.com/video/EXZPKkEFoIQ/v-deo.html
hola buenas, excelente video, pero me gustaria hacer 2 preguntas, la 1era.... que hacer para que me salga una pregunta antes de enviar como por ejemplo ESTAS SEGURO QUE DESEAS CONTINUAR? y presionar SI/NO mas que nada en caso de presionar la macro por error..... y lo otro, que me gustaría añadir otra barra con adjuntos, ya que tengo trabajadores a los cuales debo enviar informacion de salarios y cotizaciones en archivos distintos.... Muchas Gracias por el videooo
Hola Nacho, puedes pedir un MsgBox o asignarlo a una columna. Lo metes a una variable y con un if que compruebe si es verdadero o falso. Algo así:
----------------
chequeo = MsgBox("¿Quieres enviar mail el archivo? " & Range("A" & i).value, vbYesNo + vbQuestion, "Aprendiz de Excel")
If chequeo = vbYes Then
(aquí tu código para enviar el archivo)
Else
End If
--------------
Para dos adjuntos ponlo en la siguiente columna e incrementa el código en esa dirección. Algo así:
.Attachments.Add Range("F" & i).Value
.Attachments.Add Range("G" & i).Value
Guau, increíble lo bien explicado que está y la de tiempo que me vas a ahorrar, mil gracias, de verdad. Solamente quería preguntarte si habría alguna forma de añadir dos archivos adjuntos en vez de uno. Gracias! 😊
Ponlo en la siguiente columna e incrementa el código en esa dirección. Algo así:
.Attachments.Add Range("F" & i).Value
.Attachments.Add Range("G" & i).Value
@@AprendizdeExcel Mil gracias! Ha funcionado perfecto y me has salvado de duplicar más de 100 correos, te has ganado un fiel seguidor. Gran trabajo!
Genial! Me alegro que te funcionara ☺
Gracias por comentarlo!
EL TUTORIAL MAS MEJOR DEL MUNDOOOOOOOOO +1000000 LIKEEEEE
Gracias Felipe 😊
wow me ha encantado tu video, super util me suscribo desde ya a tu canal 🥰
Gracias!!
Hola. Me funcionó perfecto.
Solo me gustaría si me puedes ayudar, tengo 4 correos guardados en mi cuenta de outlook pero quiero poder escoger dentro del listado masivo que solo ciertos correos se envien desde otro dominio pero el mensaje es el mismo para todos, como puedo hacer que la direccion que recoge dentro de una celda sea el correo desde el que se envia
Ojala me puedas ayudar
No tengo varios correos y no puedo probar, pero con este código deberías poder
Prueba a vincularlo a una celda
oAccount.DisplayName = "ponaqui@tucorreo.es"
gracias por el aporte
De nada!
Millones de gracias. Un vídeo muy, muy práctico! La macro, al ejecutarla, me da un error: me dice que hay un subíndice fuera de rango. Y al depurar el problema me destaca en amarillo lo siguiente: Sheets("Mails").Select
No sé muy bien qué tengo que hacer...
Gracias Cristina.
Es posible que no encuentre la hoja Mails.
Tu base de datos está en esa hoja?
Es posible que la tengas oculta?
Muchas gracias! me ayudó mucho, la única duda y que no me resulta es el contenido del mail, que tengo que cambiar para que me aparezca el object en el mail
Excelencia pura, gracias.
Gracias Isabel! 😉
muchas gracias por la capacitacion, super clara y expedita, solo me queda la duda en como hacerlo para copiar a mas personas, intenté con .CC = Range........, pero no aparecia la nueva copia en el correo para enviar.
Sos un capo pelado!
😅
Muchas gracias funciona a la perfección, saludos desde la amazonía de #Perú.
Gracias Julio!
Me alegro que te funcionara
Saludos desde España
😉
Hola @AprendizdeExcel, gracias por tus videos. Una pregunta, como podría personalizar el cuerpo del email según el destinatario? Gracias y saludos
Excelente Explicación disculpa una consulta si quiero colocar mi logo o mi firma digital como lo hago, y como hago para que se envié automáticamente si darle enviar gracias.
Hola Richar, para la segunda pregunta revisa el vídeo a partir del 6:35
Para la firma revisa este vídeo a ver si es lo que necesitas:
ua-cam.com/video/ULTbreSw2bU/v-deo.html
Buenos días, muchas gracias por el video, pero después de hacer la macro debo hacer algo más? pues no reconoce la macro
Hola Ángela, ¿abriste las librerías? ¿es posible que te de un fallo con el adjunto?
Prueba a ejecutarlo paso por paso y comprueba dónde se para
Muy buen video, muchas gracias por compartir tus conocimientos, pero tengo una consulta, si en la cuenta de Outlook tengo varias cuentas de correo, como hago para que se elija la cuenta de donde se va a remitir el correo.
Hola, lo que yo hice fue seleccionar en outlook la cuenta que quiero usar como predeterminada, entonces al enviar toma esa. Saludos!
Me funciono!!
Como haría para activar la firma del correo ya que no lo muestra?
No se puede, por eso hice otros dos vídeos que te permiten editar la firma desde el código:
El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel":
ua-cam.com/video/ULTbreSw2bU/v-deo.html
El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅"
ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
estupendo amigo. Gracias
Gracias a ti 😉
Buenísimo. Gracias.
Gracias a ti!
Genial, el video muchisimas gracias. Sin embargo, cuando pulso enviar, me sale error y me señala esto de la macro " For i = 2 To Range("A" & Rows.Count).End(x1Up).Row", como si hubiese algún fallo en ese comando
A mi tambien, alguien que sepa que omitimos?
Super Bueno, espero que sigas profundizando en Acciones que se puedan realizar con este mismo Codigo
Muchas gracias Jorge!
Habrá que enviar correos con gmail y enviar whatsApp tb, ¿no? 😅
@@AprendizdeExcel jajaja bueno con van los avazes tendremos que tener todo a la mano...hay manera de enviar solo hojas del archivo?
Creo que no. Deberías guardarlo antes
Te doy una idea para un fututro proyecto, enviar correos masivos pero con un checklist, que te permita elegir a cual destinatario enviar o no, si la necesidad de estar eliminando las filas, para mantener la misma hoja.
Gracias por el consejo!
La forma de resolverlo sería añadir una variable ligada a la columna donde tengas el control y un condicional que compruebe antes de enviar
Hola, podrías mostrar el código para realizar en envío de correos a aquellos destinatarios elegidos? muchas gracias@@AprendizdeExcel
Hola! excelente aporte. 👏 tengo una duda. ¿Cómo puedo personalizar el saludo a cada destinatario en particular? es decir, que en Body la primera linea sea un saludo que diga algo como: Hola! estimado ("Nombre de la Persona asociada a la dirección del e-mail"). Buenas xxxxxxx... después que venga el Body..
Hola, unas preguntas:
¿se puede hacer que cuando le des a enviar correos, se marque el día que has enviado el correo en una columna al lado?
¿Y también se podría hacer que se envíen sólo si pone pendiente?, es decir, que tú en una columna vaya enviado y pendiente, y que si está pendiente se envíe el correo al darle al botón y que si está enviado no haga nada.
Muy buen vídeo.
Puedes poner la fecha y hora que se envía. Por ejemplo, si lo quieres en la columna J sería algo así:
Range("J" & i).Value = Now
A tener en cuenta que si vuelves a correr la macro con la misma i pisará la hora.
Para enviar solo determinados correos en función de si una columna pone 1, verdadero o pendiente, pon una estructura de control. Básicamente es un If, que si se cumple la condición lo envíe y si no que no haga nada.
Te recomiendo, encarecidamente, que veas el tutorial de bucles y estructuras de control que hicimos:
ua-cam.com/video/KLAYln9BXMk/v-deo.html
@@AprendizdeExcel gracias eres un maquina, lo probaré haber que tal
QUE PASADA GRACIAS!
Gracias a ti 😊
Muchas gracias por el video muy bien explicado, Me funciona a la perfección, tengo una pregunta , espero me puedas ayudar!!. En un libro tengo 2 hojas ejemplos (1ra hoja con nombre Alumnos, 2da hoja con nombre Docentes) y creé la macro para la 1ra hoja y todo OK , pero para la 2da hoja también tengo una lista de correos por enviar , como haría en ese caso¿? , ya que tengo creada la macro en ese mismo libro , y fue creada para la 1ra hoja. como lo haría para la 2da hoja¿? .
Quedo atenta a tu respuesta.
Gracias!!.
Hola Astrhi, gracias por comentar.
Hay dos formas de solucionar lo que planteas.
La primera hacer dos macros distintas y luego una que llame a las dos.
Podrían llamarse MailAlumnos y MailDocentes
En ese caso tu macro sería:
Sub Enviar mails()
Call MailAlumnos
Call MailDocentes
End Sub
La ventaja de llamar macros es que cuando son muchas o tienes código entre medias se puede trabajar mejor.
En este caso que es sencillo, se trata de replicar el bucle justo antes de seleccionar la hoja. Es decir, a partir de esta línea que seleccione la hoja Docentes
Sheets("Docentes").Select
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
@@AprendizdeExcel muchas gracias :) , lo intentaré
Me funciona, muchas gracias por el contenido, quisiera saber ¿Cómo puedo hacer para controlar desde que correo hago los envíos? Ya que, tengo más de 1 correo vinculado a mi Outlook. Nuevamente gracias, saludos.
Me alegro que te funcione!
No tengo dos correos vinculados con los que probar, prueba con esta línea y me cuentas:
oAccount.DisplayName = "ponaqui@tucorreo.es"
Hola buen día; disculpa la pregunta te funciono la macro con varios correos vinculados
Muchas gracias! Me funcionó muy bien
Gracias Alexandra!
Me alegro que te funcionara 😉
Hola! realmente me sirvió mucho la macro y el video explicativo. Me gustaría en vez de texto mandar una imagen en el cuerpo del mail, sabrias como hacerlo? sería la misma imagen para todos los mails. Desde ya te agradezco
Hola Mariana, gracias por tu comentario.
Tengo dos vídeos adicionales subidos al canal que pueden resolver tu duda. En uno se sube una imagen como firma (se puede poner dentro del cuerpo) y en otro una tabla del propio Excel.
Están puestos en la descripción. Te los dejo por aquí:
El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel":
ua-cam.com/video/ULTbreSw2bU/v-deo.html
El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅"
ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
@@AprendizdeExcel GRACIAS!!! Diste la explicación más clara de todas y funciona perfecto!
Gracias!
Buenos días.
Muchísimas gracias, me ha resultado muy útil y me ha gustado tu forma de explicar el proceso.
Una pregunta. Tengo dos cuentas activas en Outlook, la personal y una génerica que usamos en mi departamento, siguiendo tus pasos me envía los correos desde la personal.
¿Como puedo hacer para que me envíe los mails desde la cuenta genérica y no desde la personal?.
Muchas gracias, un saludo.
Hola, En alguna parte del video comentaste que se puede enviar directamente sin que se abra la ventana de Outlook, como funciona? Saludos!
Si, claro 6:34
Excelente video amigo, por favor me podrías ayudar es que no me aparece en referencias la librería de Outlook, que debo hacer, gracas
hola buen dia, consulta, solo con outlook se puede hacer? si tengo thunderbird funciona igual? gracias
Tendrás que adaptar el código.
NO tengo esa cuenta, no te puedo ayudar
El video muy instructivo, Me he dado cuenta de que el titulo y el asunto lo tienes girado en la macro y el titulo (cuerpo del mensaje) no te sale en la prueba que haces. He hecho algunas pruebas pero no doy con la solución. A ver si me puedes echar un cable. Gracias
Ya di con la solución, me fijé que en otro video ponías Body en lugar de Object.
Gracias de todos modos, la solución estaba ahí, bastaba con buscarla.
En la descripción del vídeo te enlazo más vídeos de la misma serie. Te los dejo por aquí por si te ayudan a desbloquear el problema:
El segundo vídeo de la serie "Enviar EMAILS MASIVOS 📧 con FIRMA 📝, IMÁGENES 🖼, LINKS y ADJUNTOS 📎 con Excel":
ua-cam.com/video/ULTbreSw2bU/v-deo.html
El tercer video de la serie "Cómo ENVIAR CORREOS 📧 masivos con TABLAS dentro del cuerpo desde EXCEL. ✅"
ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
Si los queréis mandar desde gmail "Cómo ENVIAR 📧 CORREOS MASIVOS por GMAIL con 📎 ADJUNTOS desde EXCEL - Curso de Excel Avanzado"
ua-cam.com/video/EXZPKkEFoIQ/v-deo.html
Hola buenos días/tardes, gracias por hacer estos videos! hice este concretamente para mi empresa para enviar las nominas y funciona perfectamente, una cosa que te quería preguntar (ojalá la respondas por favor): quiero hacer y no se si se puede que, teniendo una hoja de excel con los cuadrantes de todos los trabajadores juntos en donde las columnas son sus nombre y las filas los días del mes, mueva los datos que hay en cada columna y me los pegue en una plantilla que tengo echa de word, es muy dificil y no se si se puede y ahorraria mucho tiempo de trabajo, me harias un gran favor
Hola Adrian, me alegro que te haya funcionado.
¿Has probado a vincular la tabla del Excel al Word?
Te dejo un vídeo que lo explica:
ua-cam.com/users/shortsl4WUn1LrSs0
@@AprendizdeExcel puede servir si, te ahorra mucho trabajo, gracias por eso! pero yo lo que decía es otra cosa que a lo mejor será mucho mas difícil, me explico para que me entiendas: Tengo el Excel de cuadrantes de todos los trabajadores "sucio" por así decirlo y de ese Excel tengo una plantilla en Word creada por mí que la voy rellenando para cada trabajador (nombre, mes, cada día el turno que hacen...). Si vinculo la tabla de Excel al Word como me has dicho, aparece en el Word como si fuera una imagen y tienes que guardar y hacer eso por cada tabla pero estoy renunciando a mi plantilla. Hay alguna forma de hacer eso mismo (por ejemplo haciendo clic a un botón) que te pase sus datos (nombre, mes, cada día el turno que hacen...) a un archivo Word con mi plantilla y te lo guarde, así con todos los trabajadores? perdón por el texto que por aquí es muy difícil de explicar.
Adrian, si hay forma de todo hay forma.
Yo tengo un archivo que al lanzar la macro, entre otras cosas, abre un PPT va a determinadas diapositivas, cambia unas tablas, cambia unos textos, lo guarda y lo cierra.
El problema es que quizás esa sea una solución compleja para lo que realmente necesitas y te puede dar dolor de cabeza entrar en esa programación.
No tengo claro exactamente cómo tienes montado tu sistema. Deduzco que tienes una tabla con todos los cuadrantes y de esa con algún filtro sacas la tabla de cada trabajador. Eso lo trasladas a tantos Word cómo trabajadores tengas
Si así fuera yo vincularía cada Word de trabajador a su tabla, de tal manera que cada vez que se abra se actualice. Después lanzaría una macro que fuera abriendo los Words, se actualizaran y cerraran (aquí podría añadirle que se envíen por correo).
Después de abrir la librería de Word un código como este te debería funcionar:
Sub ActualizarGuardarCerrarWord()
Dim objWord As Object
Set objWord = CreateObject("Word.Application")
'Abre el archivo de Word
objWord.Documents.Open "Aquí tu Word.docx"
'Actualiza los vínculos
objWord.ActiveDocument.Fields.Update
'Guarda y cierra el archivo de Word
objWord.ActiveDocument.Save
objWord.ActiveDocument.Close
Cierra Word
objWord.Quit
End Sub
Eso abre un Word, si tienes una lista de trabajadores podrías hacer un bucle para sacar el resto de archivos.
El problema de esto es que potencialmente te puede dar problemas si el nivel es bajo.
Mi consejo es que la macro corra sobre el propio Excel y lo saque en PDF.
Te dejo una idea, por si quieres investigar por ahí:
ua-cam.com/video/OsASXikKbzU/v-deo.html
@@AprendizdeExcel Después de ver el video que me has dicho tengo una idea que puede ser mas facil: y si hago la plantilla que tengo en Word en Excel y le digo que coja los datos de cada tabla del trabajador como en tu video con las facturas y el botón? no sería mas facil? pero como hago que coja los datos del otro Excel de cada tabla de trabajador? perdón por tantas preguntas 😊
Vincula una Excel con otra... o móntalo sobre la misma
Buenos días y gracias por tus videos. Nos ayudan mucho.
Tengo un problemilla que no se solucionar.
Me gustaría añadir una imagen al cuerpo del email enviado con la macro de gmail.
He visto tu video donde lo haces desde Outlook, y he tratado de adaptar la macro de outolook a la de Gmail,
pero no hay manera.
¿cómo quedaría la macro de envío de email desde Gmail, con la posibilidad de adjuntar imagen al cuerpo del mensaje (no como adjunto)?
MUCHAS GRACIAS
Hola Pepe. La solución podría estar en subir previamente la imagen a un servidor público y adjuntar la url de esta.
Podría ser con un código similar a este:
En un código HTMLBody con formatos sería algo así:
.HTMLBody = "" & "" & Range("E" & i).Value & "" & _
"" & "Aprendiz de Excel" & "" & _
"" & "Calle Desengaño 23" & " " & _
"UA-cam Aprendiz" & ""
Muy bueno el video. una consulta, se puede agregar una sentencia para que compruebe si el adjunto existe y en caso que no exista omita la carga del adjunto?
Si, con la función Dir te comprueba si existe o no el archivo. Podrías integrar en el bucle que te compruebe previamente si existe el adjunto y te lo incluya o no.
Te lo deja separado como si fuera una macro independiente y te lo adaptas tú a las necesidades, pero básicamente este código comprueba si existen los archivos y en caso de ser así lo pega en la columna de al lado:
Sub ComprobarAdjuntos()
For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
Archivo = Dir(Range("F" & i).Value)
If Archivo = "" Then
Range("G" & i).Value = ""
Else
Range("G" & i).Value = Range("F" & i).Value
End If
Next
End Sub
@@AprendizdeExcel Muchas Gracias GENIO!!!
De nada 😉
Excelente Video, ¿como se puede incluir en el cuerpo del correo una tabla(con un mismo formato y diseño), que vaya modificando fechas dentro de la tabla dependiendo del destinatario?
Hola Esteban, para formatos, imágenes y demás echa un vistazo a este vídeo
ua-cam.com/video/ULTbreSw2bU/v-deo.html
Buen día, una consulta, si quisiera agregar en el cuerpo del correo, una imagen distinta para cada correo, cómo sería? Y cuántos correos se puede enviar al día disponiendo de una cuenta gratuita? Gracias!!
Echa un vistazo a este vídeo, que quizás te de algunas ideas:
ua-cam.com/video/bXhPxlzNKRQ/v-deo.html
Buenas muchas gracias por el video, una pregunta por ejemplo si en mi lista de personas a quienes les voy a mandar correo quiero aplicar un filtro para mandar correos por área digamos, como puedo hacerle para que la macro me lea solo los que aparecen y no todos los correos al momento de darle click en enviar
Hola Victor, depende de tu estructura de datos.
Si es tal cuál el ejemplo en el que tienes cargados todos los correos y estos enlazados a grupos, puedes usar una columna adicional en la que con un buscarv te valide si está o no en el grupo que deseas mandar. Si está que ponga un 1 y si no que ponga un cero.
Sobre esa columna aplicas un condicional que diga que envíe el mail si es 1 y si no que pase al siguiente correo
Buenas, muchas gracias por el video. Sería de gran ayuda mostrar como solucionar lo que comenta @victorhugohernandez9041, para solo enviar email a aquellas personas seleccionadas o filtradas del listado. Muchas gracias@@AprendizdeExcel
Muchas Gracias, muy bien explicado, pero me sale un error y se pone amarillo en esta parte For i = 2 To Range("A" & Rows.Count).End(xlUp).Row y no entiendo que debo hacer
Hola Lis, es probable que el número de correos lo esté calculando mal y por eso te da error ese bucle.
Está pensado para empezar en la línea 2 y hasta el número de correos que tienes.
¿Cuántos tienes?
Es probable que estés haciendo una prueba sin correos?
Otro problema posible es que los esté contando en otra hoja donde no tengas datos
Como opciones te propongo que lo ejecutes en modo Paso a Paso por instrucciones en el menú depuración (F8)
Y si no puedes probar tb a poner directamente un valor fijo para que corra igualmente. Es decir:
For i = 2 to 5
Gracias por el vídeo! Pero una pregunta, cómo podría enviarle a cada destinatario un archivo adjunto diferente?
De verdad que muchísimas gracias!
Por cada fila es un mail distinto.
Pon en cada fila el destinatario, asunto y adjunto que quieras.
En el vídeo se mandan adjuntos diferentes por cada mail.
Salu2
si quiero agregar mas de un archivo adjunto, ¿basta con agregar debajo una fila mas con el numero de columna correspondiente ? (6:35)
Si, en principio si
exelente video nos puede compartir la macros
Si, claro, la tienes en la descripción
Hola,
Gracias por el video, muy bien explicado y sencillo. Quisiera hacerte una pregunta, al mandar el mensaje no me adjunta el texto, es decir, lo envio y me aparece todo correcto menos el texto o mensaje que se quiere mandar. ¿Cómo tengo que hacer para que en el mail aparezca el texto? muchisimas gracias:)
Debería hacerlo, es posible que tengas mal referenciada la celda o la hoja. Ejecuta en paso por paso (F8) para comprobar qué variable estás asignando
Cambia Object por Body
.Body = Range("E" & i).Value
Hola buenas tardes!!! Excelente video muy útil. Ahora bien cuando quiero correr la macro. La misma se detiene y me tira el error 438 diciendo que el objeto no lo admite. Sabrás decirme que puede ser y como solucionarlo? Muchas gracias!! Has conseguido otro seguidor más!!!!!
Hola Juan, en qué línea te da ese error?
Es posible que no hayas habilitado la librería?
@@AprendizdeExcel Hola!! Me fijé y tengo la librería del Outlook v15 y la línea de error es la de setmail=App.CreateItem(0). Desde ya muchas gracias por tu ayuda
De nada 😉
Ok y como lo reparo? Sabrías orientarme? Muchas gracias
No tengo esa versión para comprobar cómo te podría funcionar, pero en principio esa línea no debería ser un problema de tu versión de librería (siempre que la tengas marcada).
¿Es posible que tengas varios perfiles dentro de outlook?
Muy buen video y suscrito. Buscaba algo como esto, pero quiero ir un poco mas allá. Tengo un userform con un listbox en el que se cargan los datos de una tabla. El caso es que quiero abrir outlook ( display) y que en un solo correo, como copia oculta.
Se me olvidaba, puedo preparar los emails, pero me salen uno a uno y a veces los registros filtrados son demasiados. Necesito enviar en un solo email todos los usuarios y no uno a uno. Gracias
Hola, bienvenido al canal!
Entiendo que quieres que en un solo mail se manden correos a varias direcciones (copia oculta o como sea), ¿es así?
En la casilla correspondiente pon los correos separados por ";" (punto y coma).
Si los traes de una tabla hazte una concatenación previa.
Salu2
No me salió, ¡AYUDAAAA! 😢
Saludos muy util y gracias, tengo una pregunta ¿Si no quiero que se despliegue la ventana del envio y lo haga automaticamente?
Revisa la parte del vídeo 6:35
@@AprendizdeExcel Muchas Gracias
@@AprendizdeExcel Con solo guardar el documento de excel se queda todo guardado?
Para guardar el Excel con el código debes cuardarlo en versión Excel habilitado para macros, xlsm
Buenas! Que buen vídeo! Lo estoy intentando, pero cuando le doy a enviar, me da error en: Sheets ("Mails") . Select
No sé si sabes por qué puede ser. Un saludo y muchas gracias!!
Cómo se llama la hoja donde tienes los datos?
@@AprendizdeExcel vale, se tiene que llamar igual que lo que ponga entre comillas, no? Es decir, la hoja debería llamarse Mails?
O cambiar esa parte del código y poner la hoja dónde tengas los datos.
Si solo tienes una hoja en la Excel podrías eliminar esa línea
Estimado Muchas gracias por el video, mi duda es la siguiente, se me manda todo el correo de manera correcta, pero el archivo no se adjunta en el mismo, y esta puesto de buena manera la ruta de acceso, sera algun inconveniente con outlook?
Prueba a quitar la línea On Error Resume Next para ver dónde se para
Si se para a la hora de adjuntar es que el archivo genera un problema
Ya sea porque no lo encuentra (dirección está mal), está abierto, se pasa de tamaño o algo.
De no marcar ese error es posible que esté leyendo en otra columna
Hola Aprendiz de Excel, primero enhorabuena por ese dominio del Excel, segundo me ha dejando de funcionar la Macro, específicamente con los adjuntos. Me dice error 440, No se pueden agregar los datos adjuntos, falta el origen de los datos! AUXILIOOOO!!!
Gracias por el comentario!
Por concretar. ¿Te funciona antes y te ha dejado de funcionar?
Si es así, te funciona sin adjuntos?
Si las dos son si lo normal es que tengas un problema con los adjuntos. Primero comprueba que no hayas insertado una columna o eliminado y eso esté fallando. Después comprueba que existen los archivos (¿has podido moverlos de carpeta?
@@AprendizdeExcel Gracias por tu pronta respuesta.
Efectivamente, antes me funcionaba y me ha dejado de funcionar, no he movido los adjuntos , no he insertado columnas solo me funciona la macro si le pongo la comilla ' a la línea de los adjuntos en el código de VBA.
Está claro que fallan los adjuntos.
Existe una posibilidad, que al examinar el código por lo que sea lo hayas modificado (metido un caracter adicional donde no debas). Poco probable.
Creo que no puede adjuntar los archivos. La forma de comprobarlo es ejecutarlo paso por paso con F8 (menu depuración) y ahí intenta ver qué valor coge la variable del adjunto. Si es la correcta copia ese adjunto y pégalo en un explorador tuyo a ver si puede abrirlo.
Comprueba que no estuviera abierto el archivo a adjuntar, por si fuera eso
@@AprendizdeExcel muchas gracias, lo intentaré
Muchas gracias por el aporte, me sale un error al ejecutar el código me señala la "i" en el For indicando que no se ha definido una variable. Sabe como puedo solucionar el error
EXCELENTE 10000000
Muchas gracias Johanna 😉
Hola ! Muchas gracias por tu video. No se porque me aparece " Error de Comando, No se ha definido el tipo definido por el usuario. ¿Que puede estar pasando?
¿Qué línea te marca exactamente?
Hola!!! Me encantó! Súper útil! Consulta: cómo puedo agregar un link en el cuerpo del email?
Hola!
Muchas gracias!
Imagino que querrás una firma con enlace final. Te dejo un código y te explico un poco. En vez de body pon esto:
.HTMLBody = " " & _
"" & _
"" & "Tu nombre" & "" & _
"Tu enlace " & _
" " & _
""
Si quieres máss líneas lo que debes agregar o quitar esta línea:
"" & "Tu nombre" & "" & _
Podrías poner nombre, teléfono y luego el enlace a la web
hice varias pruebas y los correos si se envían y si llegan a los correos que estoy usando de prueba, sin embargo me llega un correo al correo del remitente que dice "No se puede localizar a los destinatarios siguientes" y sale el correo al que estoy enviando ¿A que podría deberse esto?
No lo sé Eva, es la primera vez que alguien me notifica un problema así
Hola, me parece muy bueno el video, pero quisiera saber como puedo ver el video de como generar las facturas y exportarlas a pdf, pero desde el comienzo he revisado en tu canal, pero no lo encuentro, me ayudarias bastante el que me envies el link, gracias y saludos excelente video.
Hola Leo, en principio debería estar en las tarjetas del vídeo.
Te dejo un link por aquí:
ua-cam.com/video/OsASXikKbzU/v-deo.html
Básicamente es tener montada una base de datos y sobre ella sacar los datos con buscarv. El vídeo no explica con detalle eso y se centra en la impresión. Básicamente es un bucle que se ejecuta en función del rango que tiene la validación de datos de la celda
Echa un vistazo y me comentas