Почему я получаю «Ошибку пути к файлу» в разделе .Раздел вложений

#vba

#vba

Вопрос:

Привет, я получаю сообщение об ошибке пути к файлу и ни за что на свете не могу понять, почему.

Для начала: в моей электронной таблице у меня есть столбец A, в котором есть контрольные номера, и столбец B, в котором есть номера регионов (т.Е. номер проверки 123456 и номер региона 2). Я пытаюсь автоматизировать отправку электронных писем для отправки контрольного номера в аффилированный регион.

Проблема: вложение, которое будет включено в электронное письмо, — «FCC02 218920457». FCC02 будет регионом, а номер после этого — контрольным номером. Это и всегда будет PDF-документ.

Приведенный ниже код — это то, что мне сейчас нужно, чтобы получить номер проверки и добавить номер региона перед ним, чтобы заполнить путь к файлу:

 .Attachments.Add "Y:M. Clark" amp; "" amp; "Check Copies" amp; "" amp; Yr amp; "" amp; Mnth amp; "" amp; Dte amp; "" amp; "FCC0" amp; CStr(Chk.Offset(, 1).Value) amp; vbNewLine _

 amp; " " amp; CStr(Chk.Value) amp; ".pdf"
 

Yr, Mnth и Dte — это переменные, которые получают значение через поле ввода (к сожалению, мне приходится это делать, поскольку мы работаем со случайными датами при сохранении файлов). «CStr (Chk.Offset (, 1).Value)» — это то, что захватывает номер региона, поэтому есть смещение, когда оно просматривается в столбце B, как указано во введении.

Несмотря на это, я получаю сообщение об ошибке каждый раз, когда программа переходит к приведенному выше коду. Я полагаю, что это где-то в этом разделе:

 "FCC0" amp; CStr(Chk.Offset(, 1).Value) amp; vbNewLine _
 

Однако я не могу понять, почему

Если бы кто-нибудь мог помочь, это было бы с благодарностью!

Спасибо

Комментарии:

1. Почему вы вводите в него символ новой строки? Вы думаете, что так вы продолжаете код до следующей строки? Удалите это и вместо .Attachment.Add использования Debug.Print , чтобы вы могли видеть результат в своем непосредственном окне. Как только вы увидите, что новая строка не создается, а вся строка находится в одной строке, измените отладку обратно на добавление вложения.

2. Удалите «amp; vbNewLine». Новые строки никогда не включаются в путь.

3. Теперь я понимаю, что мне пришлось бы закрыть путь к файлу перед добавлением vbnewline. Это сработало, спасибо!