1

Я новичок в формате написания кода на VBA, и я изучал, как получить текущую дату для автоматического ввода в строку темы сообщения электронной почты по команде. Мне нужно знать, как выполнить следующую задачу.

В строке темы должно быть написано "вещи вещи вещи ДЕНЬ СЕГОДНЯ " Тело должно быть написано "Человек, (возврат; вкладка) вещи вещи вещи ДЕНЬ СЕГОДНЯ "

Кроме того, если это возможно, я бы хотел, чтобы он автоматически прикреплял файл из определенного местоположения с именем « TODAYS DATE.xlsx».

Сегодняшняя дата должна быть в формате DDMMMYY.

В настоящее время я использую очень простой макрос для создания электронного письма и добавления текста там, где он мне нужен.

Sub STUFF()
Dim msg As Outlook.MailItem
Set msg = Application.CreateItem(olMailItem)
msg.To = "EMAILS"
msg.CC = "EMAILS"
msg.Subject = "STUFF STUFF STUFF *DATE*"
msg.Body = "PERSON, STUFF STUFF STUFF *DATE*"
msg.Display
Set msg = Nothing
End Sub

Спасибо за помощь.

изменить - для пояснения я попробовал следующее:Сегодняшняя дата в теме почты Outlook (2010/Quick Steps) https://stackoverflow.com/questions/9177199/getting-the-current-date-in-visual-basic-2008 https://stackoverflow.com/questions/4313730/current-date-in-outlook-subject-line и большинство других результатов Google для любого варианта ключевых слов "макрос Outlook 2010 текущая дата"

править 2 - причина. Моя конечная цель - создать макрокоманду, которая при выборе создает новое электронное письмо с полями «Кому», «Субъект», «Тело» и «Вложение», чтобы я мог просто отредактировать пару строк ежедневно меняющейся информации. и отправь это. Это будет использоваться только при необходимости, а не каждый раз, когда мне нужно отправить новое письмо.

1 ответ1

2

Чтобы завершить заголовок вашего сообщения, вы ищете Now с некоторыми манипуляциями с датой.

Sub STUFF()
    Dim msg As Outlook.MailItem
    Set msg = Application.CreateItem(olMailItem)
    msg.To = "email@email.ca"
    msg.CC = "BumblebeeJoe@email.ca"
    msg.Subject = "STUFF STUFF STUFF" & Now
    msg.Body = "PERSON, STUFF STUFF STUFF" & Now
    msg.Display
    msg.Attachments.Add ("e:\temp\" & Format(Now, "dd.mm.2014") & ".xlsx")
    Set msg = Nothing
End Sub

Now просто возвращает дату, которая в нашем случае просто добавляется к строкам для Subject и Body. Если вы хотите отформатировать дату, вы бы использовали что-то вроде « Format(Now, "dd.mm.2014") которое вы видите в Attachment.Add пример. Больше примеров форматирования даты

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

Тогда все, что вам нужно сделать, это назначить кнопку макроса быстрого доступа к вашему макросу.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .