xlsxファイル形式のOutlook添付ファイル(単一ファイル)を保存しようとしていますが、Save as Mehtode of workbook class failed
の行にwb.saveAs
というエラーが表示されます。誰か助けが必要です。ワークブッククラスのメソッドとして保存できません - Outlook vba
Public Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim objExcel As Object
Dim wb As Object
Dim saveFolder As String, dateFormat As String, fName As String
saveFolder = "D:\Ashok\Work\Capital\Collection\"
For Each objAtt In itm.Attachments
sFileName = LCase(objAtt.FileName)
sPathName = saveFolder & sFileName
objAtt.SaveAsFile sPathName
Set objExcel = CreateObject("Excel.Application")
Set wb = objExcel.Workbooks.Open(sPathName)
' error on below line
wb.SaveAs FileName:=Replace(sPathName, ".csv", ".xlsx"), FileFormat:=xlOpenXMLWorkbook
wb.Close SaveChanges:=True
Kill sPathName
objExcel.Quit
Next
End Sub
を定義しました。拡張機能をCSVからXLSXに変更しています。しかし、CSVファイルはワークブックではありません。 Windowsのデフォルトでは、ExcelはワークブックのようにCSVファイルを開くため、拡張機能を単独で使用しないでください。 –