Descarga automática masiva de archivos adjuntos en Outlook (en Windows)

  Рет қаралды 22,831

David “3djDavid” Vivanco

David “3djDavid” Vivanco

Күн бұрын

Пікірлер: 81
@3djdavid
@3djdavid Жыл бұрын
Código para descargar todos los archivos adjuntos en una sola carpeta, cuidado que sobreescribirá los archivos que tengan el mismo nombre. Public Sub All_in_One(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String Dim strFileName As String Dim strNewName As String Dim fso Dim intExtlen As Integer Dim strPre As String Dim strExt As String Dim dateFormat dateFormat = Format(Now, "yyyy-mm-dd") Set fso = CreateObject("Scripting.FileSystemObject") '------------------------------------------------------------------------------ saveFolder = "C:\Users\Chanchito\Desktop\outlook\" ' -cualquier archivo aqui '------------------------------------------------------------------------------ 'Revisa los adjuntos For Each objAtt In itm.Attachments strFileName = objAtt.DisplayName intExtlen = Len(strFileName) - InStrRev(strFileName, ".") + 1 'Revisa la extension del archivo If InStrRev(strFileName, ".") > 0 Then strExt = Right(strFileName, intExtlen) strPre = Left(strFileName, Len(strFileName) - intExtlen) Else strExt = "" strPre = strFileName End If strNewName = strPre & strExt ' Asignar el nuevo nombre strFileName = strNewName 'Guardar archivo objAtt.SaveAsFile saveFolder & "\" & strFileName Set objAtt = Nothing Next itm.UnRead = False End Sub Private Sub ReplaceIllegalChars(asunto As String, sChr As String) asunto = Replace(asunto, "/", sChr) asunto = Replace(asunto, "\", sChr) asunto = Replace(asunto, ":", sChr) asunto = Replace(asunto, "?", sChr) asunto = Replace(asunto, Chr(34), sChr) asunto = Replace(asunto, "", sChr) asunto = Replace(asunto, "|", sChr) asunto = Replace(asunto, "*", sChr) End Sub
@MariannyGarciaSanchez
@MariannyGarciaSanchez 10 ай бұрын
y si no quiero que se reemplacen los archivos con el mismo nombre?
@alexcorvi
@alexcorvi 7 ай бұрын
Excelente, David !!!. El script me ha dado la solución a un tema que tenía pendiente. Muchas gracias por tu aportación. Por si a alguién le sirve, he incluido borrar los adjuntos del email una vez grabados en el directorio: incluir estas lineas después de la salida del For Each inicial, debajo de itm.UnRead = False ... For Each objAtt In itm.Attachments ... Next itm.UnRead = False For i = 1 To itm.Attachments.Count itm.Attachments.Remove 1 Next i End Sub
@gcpa68
@gcpa68 Жыл бұрын
Excelente aporte!! Muy fácil de seguir, funcionó perfecto. Gracias.
@3djdavid
@3djdavid Жыл бұрын
super, gracias por avisar, ya ha pasado un tiempo desde que lo subí.
@juanruiz8758
@juanruiz8758 2 жыл бұрын
Gracias David, me funcionó perfecto y muy muy bien explicado 👌. Like
@3djdavid
@3djdavid 2 жыл бұрын
ah!, me alegro mucho!, gracias!
@stamcoldcrazy123
@stamcoldcrazy123 2 жыл бұрын
Que gran aporte super detallado, gracias David y saludos !!
@3djdavid
@3djdavid 2 жыл бұрын
gracias a ti, saludos!
@DacarSoft
@DacarSoft 2 жыл бұрын
Excelente explicación amigo, en un trabajo anterior hice algo similar a esto, donde descargaba archivos planos, y luego con otro programa hecho en C# insertaba cierta información en una base de datos, fue un tema de facturación electrónica. Digamos que ya teniendo el archivo, puedes usar otros lenguajes de programación como python, C# o Java, para programar alguna acción con ese archivo.
@heidiwinkler857
@heidiwinkler857 3 жыл бұрын
Gracias por el gran aporte 👏👏👏
@3djdavid
@3djdavid 3 жыл бұрын
Gracias por comentar!
@RigoVerastica
@RigoVerastica Жыл бұрын
Fue de mucha ayuda. Muchas gracias Sergio.
@3djdavid
@3djdavid Жыл бұрын
Con mucho gusto
@andresyanez7487
@andresyanez7487 2 жыл бұрын
La raja compadreeee clarito clarito, funciono IMPEQUE
@glaserose7698
@glaserose7698 2 жыл бұрын
Me salvaste la vida, pude descargar un montón de archivos que se perdieron de mi nube. En mi mail de empresa, recomendasismo!
@3djdavid
@3djdavid 2 жыл бұрын
me alegro mucho, saludos!
@andymena491
@andymena491 2 ай бұрын
Muchas gracias, bien explicado :D
@FaridMonti
@FaridMonti 2 жыл бұрын
Muy buena manera de hacer este proceso, gracias, ya la estoy usando
@3djdavid
@3djdavid 2 жыл бұрын
Excelente, me alegro mucho!
@jo.ojanGPT
@jo.ojanGPT 10 ай бұрын
Tremendo TIP, años descargando facturas, me funcionó perfect. Muchas Gracias
@3djdavid
@3djdavid 9 ай бұрын
me alegro, muchas gracias!
@gustavoromero4317
@gustavoromero4317 2 жыл бұрын
Estimado David: Mil Gracias. Primeramente te comento que no soy programador, pero me gusta siempre aprender algo nuevo. El desarrollo de la explicacion (Paso a Paso, incluyendo la de ir a activar el Script )me sirvio para entregar una tarea de descargar desde 1980 correos con adjuntos "txt". Ahora mi inquietud es : Que le deberia de cambiar a tu script si quiero ser mas personalizado y solo quiero que desde un sender en especifico o desde un Asunto en Especifico descargar/guardar esos Adjuntos ? Desde Ya Muchas Gracias por ese FeedBack. Sigue Adelante!
@3djdavid
@3djdavid 2 жыл бұрын
genial!, me disculpo ya que he tenido mucho trabajo por entregar. Apenas termine sigo mejorando los archivos, favor atentos a siguientes videos!, gracias.
@kiader
@kiader 2 жыл бұрын
¿Como lo hago para descargar así los pdf de correos antiguos y no de los que apenas me van a enviar?
@ccaceressony
@ccaceressony 7 ай бұрын
Sos grande tigre! que excelente solución
@3djdavid
@3djdavid 7 ай бұрын
Muchas gracias!
@chasconmtl
@chasconmtl 2 жыл бұрын
Mil gracias.
@lauralozano7760
@lauralozano7760 11 ай бұрын
Hola david, pregunta se podria hacer con los archivos comprimidos? Donde me sirve solo decargar el Pdf, pero esta dentro del ZIP con el XML
@matiasdibella6492
@matiasdibella6492 2 жыл бұрын
funciona perfecto!!!!!!
@garyoportu8100
@garyoportu8100 Жыл бұрын
David, el programa no adjunta todos los adjuntos del correo, lo que hace es guardar los adjuntos que van llegando al correo. ¿tienes alguna foma de descargar los adjuntos históricos del correo?
@kriziafernandaarteagadiaz2017
@kriziafernandaarteagadiaz2017 Жыл бұрын
Cómo le puedo hacer si quiero que todos los archivos se descarguen en la misma carpeta
@joaquingutierrez1062
@joaquingutierrez1062 11 ай бұрын
Hola David, gracias por compartir este consejo, es muy práctico, tendrás algún otro para descargar archivos adjuntos pero que se tienen sobre una lista creada desde Excel?
@joelsc5312
@joelsc5312 2 жыл бұрын
Muchas gracias por tu aportación, de mucha utilidad, que pasa si ya tengo 300 correos que recibí con información previamente PDFS. puedo seleccionarlos y correr alguna forma este script para que los descargue? gracias.
@3djdavid
@3djdavid 2 жыл бұрын
Siento la demora en responder. Se puede mover los mails a la carpeta recibidos e ir a reglas y clic a administrar reglas, luego seleccionas la regla y das clic a ejecutar.
@eduardovasquezpacheco8691
@eduardovasquezpacheco8691 Жыл бұрын
Buenos dias Sergio Espero te encuentres muy bien. Por algun motivo no me esta funcionando con Windows 11
@3djdavid
@3djdavid Жыл бұрын
Soy David, no Sergio
@eduardovasquezpacheco8691
@eduardovasquezpacheco8691 Жыл бұрын
@@3djdavid Perdon David si es que al querer realizar tu ejercicio no me esta funcionando no se si sera por ser windows 11
@davidwebchile
@davidwebchile Жыл бұрын
@@eduardovasquezpacheco8691 voy a revisar, recien tengo windows 11
@davidwebchile
@davidwebchile Жыл бұрын
probado en windows 11, funciona bien.
@joankarloangulobardales6324
@joankarloangulobardales6324 2 жыл бұрын
buenas tardes, me sale un mensaje que dice: No se pueden guardar los datos adjuntos. La ruta de acceso no existe. compruebe que la ruta de acceso sea correcta. como opciones depurar y finalizar. Ayuda por favor
@3djdavid
@3djdavid 2 жыл бұрын
Es windows no?, lo pudo solucionar, siento responder ahora. Estaban los mensajes en revisión.
@karinayanez2905
@karinayanez2905 2 жыл бұрын
me aparece el mismo error, que hacemos en estos casos?
@3djdavid
@3djdavid 2 жыл бұрын
@@karinayanez2905 hola, siento la tardanza en responder, ya pudo solucionarlo?, si aún requiere ayuda favor me escribe a mi email, gracias.
@dassonjosea6295
@dassonjosea6295 Жыл бұрын
Gracias por el video. He realizado todos los pasos; pero al crear la nueva regla en la parte donde hay que escojer el script no me pone ningún nombre, o sea que "alguien-, es decir algo" está bloqueando que aparezcan los script para poder escogerlo. Favor ayuda.
@NelsonQuiterio
@NelsonQuiterio 2 жыл бұрын
Saludos. Si yo quiero que el archivo que venga con el mismo nombre se me sobre escriba que debo cambiar en el código?
@3djdavid
@3djdavid 2 жыл бұрын
Borrar estas lineas: 'Revisa que consecutivo asignar al nombre (1), (2), (3), etc. While fso.fileexists(saveFolder2 & "\" & strNewName) = True w = w + 1 strNewName = strPre & Chr(40) & w & Chr(41) & strExt Wend
@yuranymolina154
@yuranymolina154 Жыл бұрын
Hola Sergio, muchas gracias por tu video me ayudado, pero tengo una duda: estoy descargando archivos ZIP y necesito que tomen el nombre del asunto pero no me deja, sabes si se debe cambiar algo adicional?
@jotasimunovic
@jotasimunovic Жыл бұрын
Hola David!! una pregunta, existe la posibilidad de descargar un archivo que viene como "URL" dentro del email? es decir lo que hago yo siempre, manualmente hago clic en el link URL, se abre un PDF y luego descargo.. hay forma de hacerlo automatico?
@Sky6109
@Sky6109 2 жыл бұрын
Felicidades David por tus aportes de envío de correos y este. Dime, has hecho alguna actualización reciente sobre envío masivo de correos? Saludos
@3djdavid
@3djdavid 2 жыл бұрын
No, google ha desactivado la opcion de app menos seguras y ahora es necesario habilitar la verificacion en dos pasos de google. Una vez allí aparecerá un nuevo item para generar un password para ingresar en vez de tu pass normal de gmail.
@Sky6109
@Sky6109 2 жыл бұрын
@@3djdavid Hola de nuevo. No comprendo tu respuesta. Creo que me estas explicando la forma de seguridad en dos pasos de google pero te pregunté si has hecho alguna actualización a tu sistema de envío masivo de correos. Saludos
@3djdavid
@3djdavid 2 жыл бұрын
@@Sky6109 disculpa la demora, no he realizado ningún cambio. Aún tienes ese problema?
@hernandorativa2141
@hernandorativa2141 2 жыл бұрын
Buenas tardes, mil gracias por la info, cómo podría que me cree una carpeta cada vez que descarga archivos nuevos de cada correo, que no todo quede en una sola carpeta si no que quede una carpeta individual los adjuntos de cada mail??
@enriquemedrano3208
@enriquemedrano3208 2 жыл бұрын
muy buenas noches, gracias por su aporte, pero tan solo funciona para la pc local. gracias.
@3djdavid
@3djdavid 2 жыл бұрын
Así es, lo explico en la descripción, sorry.
@ANGEL0297
@ANGEL0297 Жыл бұрын
Cuando quiero agregar el scripts aparece vacío
@UlisesMaldonado
@UlisesMaldonado 6 ай бұрын
Excelente,lo probaré, con este script sería para descargar adjuntos futuros, o sea apartir de que se implemente ó se descargarian tambien todos los adjuntos ya recibidos?
@serviciosadministrativos1452
@serviciosadministrativos1452 2 жыл бұрын
Hola! Muchas gracias por el aporte... quisiera consultarte si hay alguna manera de cambiar automáticamente el nombre del archivo que se descarga, por el Asunto del correo... Gracias una vez mas
@nidyaherrera7634
@nidyaherrera7634 Жыл бұрын
Quiero igual q obtenga el nombre del adjunto del asunto
@guillermomoralesgarcia9264
@guillermomoralesgarcia9264 2 жыл бұрын
hola y si quiero que se descarguen automaticamente los archivos mp4 (videos) que se le tiene que cambiar ayuda porfavor
@javiypatri
@javiypatri 11 ай бұрын
este Script funciona con PDF recibidos al Outlook , es decir si tengo 20 pdfs en mi bandeja se podrian descargar todos
@3djdavid
@3djdavid 11 ай бұрын
si
@Analista-s1h
@Analista-s1h Жыл бұрын
Hola, si quiero que se guarden archivos dw word y pdf en la misma carpeta?
@3djdavid
@3djdavid Жыл бұрын
en el primer coment que fijé dejé listo eso hace rato.
@patitus25
@patitus25 3 ай бұрын
Una consulta, no me aparece cuando cre la regla selecciono este equipo , no aparece lo del script.
@3djdavid
@3djdavid 3 ай бұрын
eso lo comento en el tiempo 12:30
@moisesvega6206
@moisesvega6206 Жыл бұрын
Si quiero que cambie el nombre al qué tiene como asunto a los pdf
@erivanr9710
@erivanr9710 Жыл бұрын
Tengo 2 dudas: 1.- Se puede hacer que al descargar creer una carpeta con el nombre del subject del correo? Osea, carpeta por correo. 2.- Se puede hacer que descargue con limitaciones, ejemplo si de un adjunto quiero solamente los archivos su nombre empiecen con cierta letra o numero
@FrancoArambulo
@FrancoArambulo 2 жыл бұрын
Hola, genial el codigo, pero no me esta apareciendo la opcion ejecutar scrup en o365 con elreggedit modificado tendrias alguna reomendacion?
@3djdavid
@3djdavid 2 жыл бұрын
Al parecer no se puede para esa version de office.
@JoseDiaz-tx2so
@JoseDiaz-tx2so Жыл бұрын
Genial! pero si tenemos sistema de 64bits?
@3djdavid
@3djdavid Жыл бұрын
Yo tengo sistema de 64bits, pero está realizado para Office de 32bits, no la versión dfe office 64.
@manuelpalaciossantil
@manuelpalaciossantil Жыл бұрын
Si deseo descargar todos los atach
@marcelobravo3074
@marcelobravo3074 2 жыл бұрын
para que es esto? outlok ya permite descargar archivos adjuntos en masa desde la propia web
@3djdavid
@3djdavid 3 жыл бұрын
Public Sub Adjuntos_PDF(itm As Outlook.MailItem) Dim objAtt As Outlook.Attachment Dim saveFolder As String Dim strFileName As String Dim strNewName As String Dim fso Dim intExtlen As Integer Dim strPre As String Dim strExt As String Dim getFrom getFrom = itm.SenderName Dim asunto As String Dim MENSAJE As String asunto = itm.Subject MENSAJE = itm.Body Dim dateFormat dateFormat = Format(Now, "yyyy-mm-dd") Set fso = CreateObject("Scripting.FileSystemObject") '------------------------------------------------------------------------------ saveFolder1 = "C:\Users\Chanchito\Desktop\outlook\pdf\" ' -Preferencia aqui saveFolder2 = "C:\Users\Chanchito\Desktop\outlook\" ' -cualquier archivo aqui extensionArchivo = "pdf" '------------------------------------------------------------------------------ 'Revisa los adjuntos For Each objAtt In itm.Attachments ' si es txt no coloca nombre de quien lo envia ni fecha. If ((InStr(objAtt.DisplayName, "." & extensionArchivo))) Then strFileName = objAtt.DisplayName 'Revisa si existe el archivo en la carpeta destino If fso.fileexists(saveFolder1 & "\" & strFileName) = True Then strNewName = strFileName intExtlen = Len(strFileName) - InStrRev(strFileName, ".") + 1 'Revisa la extension del archivo If InStrRev(strFileName, ".") > 0 Then strExt = Right(strFileName, intExtlen) strPre = Left(strFileName, Len(strFileName) - intExtlen) Else strExt = "" strPre = strFileName End If 'Revisa que consecutivo asignar al nombre (1), (2), (3), etc. w = 1 While fso.fileexists(saveFolder1 & "\" & strNewName) = True w = w + 1 strNewName = strPre & " " & Chr(40) & w & Chr(41) & strExt Wend ' Asignar el nuevo nombre strFileName = strNewName w = 0 End If 'Guardar archivo con nuevo nombre objAtt.SaveAsFile saveFolder1 & "\" & strFileName AttachmentCount = AttachmentCount + 1 Set objAtt = Nothing Else: ' Aqui para cada correo entrante se editara archivo adjunto con nombre y fecha de recibido ReplaceIllegalChars asunto, "-" strFileName = getFrom & " " & dateFormat & "_" & asunto & "_" & objAtt.DisplayName 'Revisa si existe el archivo en la carpeta destino If fso.fileexists(saveFolder2 & "\" & strFileName) = True Then strNewName = strFileName intExtlen = Len(strFileName) - InStrRev(strFileName, ".") + 1 'Revisa la extension del archivo If InStrRev(strFileName, ".") > 0 Then strExt = Right(strFileName, intExtlen) strPre = Left(strFileName, Len(strFileName) - intExtlen) Else strExt = "" strPre = strFileName End If 'Revisa que consecutivo asignar al nombre (1), (2), (3), etc. While fso.fileexists(saveFolder2 & "\" & strNewName) = True w = w + 1 strNewName = strPre & Chr(40) & w & Chr(41) & strExt Wend ' Asignar el nuevo nombre strFileName = strNewName w = 0 End If 'Guardar archivo con nuevo nombre objAtt.SaveAsFile saveFolder2 & "\" & strFileName AttachmentCount = AttachmentCount + 1 Set objAtt = Nothing End If Next itm.UnRead = False End Sub Private Sub ReplaceIllegalChars(asunto As String, sChr As String) asunto = Replace(asunto, "/", sChr) asunto = Replace(asunto, "\", sChr) asunto = Replace(asunto, ":", sChr) asunto = Replace(asunto, "?", sChr) asunto = Replace(asunto, Chr(34), sChr) asunto = Replace(asunto, "", sChr) asunto = Replace(asunto, "|", sChr) asunto = Replace(asunto, "*", sChr) End Sub
@carloscastanon6393
@carloscastanon6393 Жыл бұрын
Beautiful> I love it man. Pero me salio un problema . Me podrias ayudar . Me dice que hay un problema en este commando objAtt.SaveAsFile saveFolder2 & "\" & strFileName
@Hansel2994
@Hansel2994 3 жыл бұрын
saludos David, se perdió mi canal de YT de 3D
@3djdavid
@3djdavid 3 жыл бұрын
Hola Jaime, por el momento lo dejé un poco de lado, pero hice algunas cosillas con mi impresora de resina 3D. Luego lo retomaré. Saludos!
@eduardovasquezpacheco8691
@eduardovasquezpacheco8691 Жыл бұрын
Buenos dias David El sistema me esta dando el siguiente error Esta regla solo se ejecuta cuando compruebe su correo electrónico. Si no se esta ejecutando Outlook, esta regla no funcionará para comprobarlo en línea o desde otro dispositivo de correo electrónico".
@davidwebchile
@davidwebchile Жыл бұрын
y tienes acceso normal para enviar o recibir correos en outlook?
📩 Descargar adjuntos de Oultook cuando se reciba un correo con cierto asunto [VBA]
15:42
Sergio Alejandro Campos - EXCELeINFO
Рет қаралды 42 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 62 МЛН
Guardar archivos adjuntos de correos electrónicos de Outlook a OneDrive usando Power Automate
11:30
Sergio Alejandro Campos - EXCELeINFO
Рет қаралды 82 М.
Mario Odyssey, but Moons = More REALISTIC...
17:38
Manx Ninja Pig
Рет қаралды 8 МЛН
5 Outlook Tips and Tricks You Need to Know
18:18
El Tío Tech
Рет қаралды 195 М.
POLÉMICO cambio de logo de CINEMEX. ¿Por qué tanto rechazo?
25:20
Marco Creativo
Рет қаралды 62 М.
Automatiza la Descarga de Archivos Adjuntos en Outlook con Python
16:44
Descargar archivos adjuntos luego liberar espacio o eliminar mensajes en Outlook hotmail
16:53
Ronal Mañuico - Computación y Tecnología
Рет қаралды 6 М.
✉ Extraer correos desde Outlook a Excel filtrando por FECHA y DESCARGAR archivos adjuntos [VBA]
15:31
Power Bi - Rotacion de personal | Funciones Dax | calculate | count |
14:14
zaith Fernandez Solis
Рет қаралды 184
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН