Я пишу код в MS Outlook для обработки входящих писем.Синтаксис CallByName Outlook VBA
Мой код имеет длинный условный оператор, чтобы определить категорию, к которой относится каждый входящий адрес электронной почты.
Затем, исходя из результата этого условного оператора, предполагается, что код должен прочитать соответствующее свойство объекта MailItem.
Я хочу использовать функцию CallByName для достижения этой цели.
x = CallByName(itm, PAN_Source, VbGet)
Где ITM 'является объектом MailItem, переменная «PAN_Source» содержит строку, которая относится к специфическому свойству от «ITM».
Например, если входящая почта имеет вложение, то «PAN_Source» присваивается значение «Attachments.Item (1) .DisplayName». Я хочу, чтобы CallByName (itm, PAN_Source, VbGet) возвращал itm.Attachments.Item (1) .DisplayName
Outlook VBA просто прекращает выполнение на этом этапе выполнения.
Вы можете помочь в определении ошибки в коде выше?
Благодаря
Не работает. Дает ошибку несоответствия типа. Если конкретно требуется, чтобы объект был предоставлен, а не имя объекта. –
Для второго аргумента попробуйте передать строку, которая представляет собой простое свойство объекта без нескольких точек. Например, передайте имя свойства. –