Здравствуйте.Макрос ниже отправляет активный файл по почте. Макрос работает с оффлайн файлами, но не работает с файлами, которые расположены в One Drive.
Код
Sub SendMail()
Dim OutApp As Object
Dim OutMail As Object
Dim cell As Range
Application.ScreenUpdating = False
Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
On Error GoTo cleanup
Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
With OutMail
.Attachments.Add ActiveWorkbook.FullName
.Display
End With
On Error GoTo 0
Set OutMail = Nothing
cleanup:
Set OutApp = Nothing
Application.ScreenUpdating = True
End Sub
Вы, случаем, макрос запускаете не из той же книги, которую вложить пытаетесь? Даже не так: макрос расположен в той же книге или в другой? Какой текст ошибки?
Дмитрий(The_Prist) Щербаков, макрос расположен в той же книге, которую хочу отправить. С оффлайн файлами все работает. Ссылка на скриншот ошибки: вероятно файл открыт, либо нет разрешения на его открытие
rud.666, судя по ссылке - файл в локальной папке. И OneDrive тут как бы не причём. Просто попробуйте в Double Commander зайти в папку открыть файл и отправить.
rud.666 написал: макрос расположен в той же книге, которую хочу отправить.
это и является проблемой, т.к. открытую на текущий момент книгу нельзя отправить таким кодом. Встраивайте код в надстройку или перед вложением книги делайте SaveCopyAs, вкладывайте копию и после отправки удаляйте.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...