Im работает над этим кодом для создания Outlook Outlook из Excel. И часть этого кода состоит в том, чтобы вставить форматированный текст внутри тела, как только AppointmentItem не будет полностью разрешен. Он работает так:Ошибка в записи пункта назначения при копировании текста
- Я сначала создать MailItem и использовать HTMLBody вставлять и форматировать свой текст.
- Даже не нужно отображать этот элемент, и я использую команду для копирования форматированного текста (сохранение текста в буфере обмена Windows [CTRL + C]).
- Теперь я создаю AppointmentItem и использую другую команду для вставки текста внутри тела встречи (не совсем текст, но все, что находится внутри буфера обмена Windows [CTRL + V]).
Ну, отлично работает, но я хотел бы избежать этого CTRL + C_ & _CTRL + V вещь, если это возможно. Но это не моя основная проблема, так как я получаю эти «ошибки»:
Первая ошибка: Если я загружаю этот код два раза подряд, он должен отображать два назначения Outlook, каждый из которых с форматированием текст. Но первая встреча показывает, что текст дублируется, а второй ничего не показывает. Img:
Вторая ошибка: Im, используя код, чтобы разблокировать документ Word (так как Im используя .GetInspector.WordEditor собственности), но даже с помощью этого кода, иногда он показывает эту ошибку и выделить
B5.PasteAndFormat (wdFormatOriginalFormatting)
линию :
Этот метод или свойство не доступно, поскольку документ заблокирован для редактирования.
Но иногда работает нормально.
Ну, это он, извините за эту тему настолько огромную. Но я понятия не имею, что происходит.
Мой код:
Set oApp = CreateObject("Outlook.Application")
'========================================================================================
'//EMAIL
'========================================================================================
Set ItemEmail = oApp.CreateItem(0)
With ItemEmail
.HTMLBody = " <b>text text text</b> "
End With
Set A1 = ItemEmail
Set A2 = A1.GetInspector
Set A3 = A2.WordEditor
Set A4 = A3.Range
'//Protected file
Set Protegido = ItemEmail.GetInspector.WordEditor
If Protegido.ProtectionType <> wdNoProtection Then
Protegido.Unprotect
End If
A4.FormattedText.Copy
ItemEmail.Close (olDiscard)
'________________________________________________________
'========================================================================================
'// APPOINTMENT
'========================================================================================
Set ItemAppoint = oApp.CreateItem(1)
With ItemAppoint
.Display
End With
'//Protected file
Set Protegido = ItemEmail.GetInspector.WordEditor
If Protegido.ProtectionType <> wdNoProtection Then
Protegido.Unprotect
End If
Set B1 = ItemAppoint
Set B2 = B1.GetInspector
Set B3 = B2.WordEditor
Set B4 = B3.Application
Set B5 = B4.Selection
B5.PasteAndFormat (wdFormatOriginalFormatting)
'______________________________________________________