get excel file from email attachment in vba get excel file from email attachment in vba
The solution for “get excel file from email attachment in vba get excel file from email attachment in vba” can be found here. The following code will assist you in solving the problem.
Sub SaveEmailAttachmentsToFolder(OutlookFolderInInbox As String, _
ExtString As String, DestFolder As String)
Dim ns As Namespace
Dim Inbox As MAPIFolder
Dim SubFolder As MAPIFolder
Dim Item As Object
Dim Atmt As Attachment
Dim FileName As String
Dim MyDocPath As String
Dim I As Integer
Dim wsh As Object
Dim fs As Object
On Error GoTo ThisMacro_err
Set ns = GetNamespace(“MAPI”)
Set Inbox = ns.GetDefaultFolder(olFolderInbox)
Set SubFolder = Inbox.Folders(OutlookFolderInInbox)
I = 0
‘ Check subfolder for messages and exit of none found
If SubFolder.Items.Count = 0 Then
MsgBox “There are no messages in this folder : ” & OutlookFolderInInbox, _
vbInformation, “Nothing Found”
Set SubFolder = Nothing
Set Inbox = Nothing
Set ns = Nothing
Exit Sub
End If
‘Create DestFolder if DestFolder = “”
If DestFolder = “” Then
Set wsh = CreateObject(“WScript.Shell”)
Set fs = CreateObject(“Scripting.FileSystemObject”)
MyDocPath = wsh.SpecialFolders.Item(“mydocuments”)
DestFolder = MyDocPath & “\” & Format(Now, “dd-mmm-yyyy hh-mm-ss”)
If Not fs.FolderExists(DestFolder) Then
fs.CreateFolder DestFolder
End If
End If
If Right(DestFolder, 1) <> “\” Then
DestFolder = DestFolder & “\”
End If
‘ Check each message for attachments and extensions
For Each Item In SubFolder.Items
For Each Atmt In Item.Attachments
If LCase(Right(Atmt.FileName, Len(ExtString))) = LCase(ExtString) Then
FileName = DestFolder & Item.SenderName & ” ” & Atmt.FileName
Atmt.SaveAsFile FileName
I = I + 1
End If
Next Atmt
Next Item
‘ Show this message when Finished
If I > 0 Then
MsgBox “You can find the files here : ” _
& DestFolder, vbInformation, “Finished!”
Else
MsgBox “No attached files in your mail.”, vbInformation, “Finished!”
End If
‘ Clear memory
ThisMacro_exit:
Set SubFolder = Nothing
Set Inbox = Nothing
Set ns = Nothing
Set fs = Nothing
Set wsh = Nothing
Exit Sub
‘ Error information
ThisMacro_err:
MsgBox “An unexpected error has occurred.” _
& vbCrLf & “Please note and report the following information.” _
& vbCrLf & “Macro Name: SaveEmailAttachmentsToFolder” _
& vbCrLf & “Error Number: ” & Err.Number _
& vbCrLf & “Error Description: ” & Err.Description _
, vbCritical, “Error!”
Resume ThisMacro_exit
End SubSub Test()
‘Arg 1 = Folder name of folder inside your Inbox
‘Arg 2 = File extension, “” is every file
‘Arg 3 = Save folder, “C:\Users\Ron\test” or “”
‘ If you use “” it will create a date/time stamped folder for you in your “Documents” folder
‘ Note: If you use this “C:\Users\Ron\test” the folder must exist.
SaveEmailAttachmentsToFolder “MyFolder”, “xls”, “”
End Sub
More questions on [categories-list]
- checking and changing system volume vb.net checking and changing system volume vb.net
- selecttoken em vbnet e json
- how to call gcd in vba
- pivot data source not accepting table named range vba
- Excel PasteSpecial Format:= can’t find the argument
- refresh token em vb net
- menus act like radio buttons vb.net
- power query M substract minimum value of column -dax
- how to concatenate more than 40 lines in vba how to concatenate more than 40 lines in vba
- discern between file and folder given path vb.net
- putting marquee in vb.net
- code for reading letters only in vb 6
- vba array dimensions
- text to speech vb.net
- set datetimepicker value to null vb
- how to correct a number to 2 decimal places in vba
- System.Data.OleDb.OleDbException: ‘No value given for one or more required parameters.’
- vba file chooser
- vba code to add new column in table
- how save excel through visual basic
- make your computer talk vbscript
- for i in range vba
- vbnet make a string to unicode converter
- create new worksheet excel visual basic
- vba sendkeys
- vba is integer
- remove series name from legendvbnet
- priavte sub with multiple handels find sneder
- openfiledialog specific folder
- vbnet check if string is only symbols
- tester si une case est vide vba
- vbnet check if number is even or odd
- find days in month vba
- excel vba multiply cell value
- sort dictionary by key vba
- excel vba delete columns in range excel vba delete columns on another sheet
- VBA – Print Whole Workbook VBA – Print Whole Workbook
- excel vba formatconditions range
- VBA Dictionary Data Type
- excel vba assign shortcut key to button
- vba comment shortcut vba comment shortcut
- build an index all files of a FTP site
- vbnet find highest value in chart
- vb net dgv doesn’t keep currency format
- delete all controls from list of control vb.net delete all controls in an area vb
- vlookup columns not next to each other
- how to get value from clipboard in vbnet
- afficher un message d’erreur vba
- VBA Sort RossetaCode
- vba string length