Outlook 2013: как группировать по полученной дате и отображать полученное время?
Я использую Outlook 2013. По умолчанию он группируется на основе полученной даты Сегодня, вчера, дней недели, прошлой недели, которая действительно включает все предыдущие.
Затем полученный столбец показывает формат м / дд / гггг чч: мм AM / PM. Моя проблема в том, что с датой слишком много информации, чтобы отображаться практически при включенной панели чтения.
Изменение формата полученного столбца / поля изменяет его как для группировки, так и для табличного представления.
Мои извинения, как я думаю, корень моей неспособности понять это номенклатура. Поэтому, пожалуйста, держись со мной.
Я собираюсь сгруппировать по дате и отобразить время в сетке / таблице. Если бы я мог отметить, что сегодня, вчера и, возможно, день недели для группировки, было бы идеально, но я подозреваю, что для этого потребуется нечто большее, чем просто посмотреть на сообщение, в котором, как я подозреваю, находится время этой работы.
Я думаю, что нужно сделать, это создать дополнительное поле для группирования, потому что мне нужно убрать время, иначе это приведет к группировке по дате и времени, что почти всегда будет моим сообщением и, следовательно, бесполезным.
Где я в недоумении, как мне заполнить дополнительное поле? Я предполагаю, что это должен быть VBA, но я в полной растерянности относительно того, как добавить код и какое событие можно использовать, предполагая, что я могу сделать событие уровня приложения / mailitem полученный / mailitem добавленным в коллекцию. Мне достаточно указывать на событие и задействованные объекты, я в целом справился с VBA, но борюсь с объектной моделью / событиями Outlook для этой области.
Для полноты, шаги, я думаю, я понимаю ..
Добавление дополнительного поля: просмотр ленты, просмотр настроек, кнопка «Столбцы», «Новый столбец» -> соответствующие параметры - либо дата / время с соответствующим форматированием, либо текст, а также заполнение в формате даты ISO (гггг-мм-дд) для поддержания порядка сортировки ,
Группировка будет находиться под кнопкой «Группировать по» в том месте, где находится кнопка «Столбцы».
РЕДАКТИРОВАТЬ: я сделал код работает более или менее. Есть несколько оставшихся проблем.
'Code sample from stack overflow with enhancements 'Revised With typo correcton - works, sort of Private WithEvents Items As Outlook.Items Private Sub Application_Startup() Dim olApp As Outlook.Application Dim objNS As Outlook.NameSpace Set olApp = Outlook.Application Set objNS = olApp.GetNamespace("MAPI") ' default local Inbox Set Items = objNS.GetDefaultFolder(olFolderInbox).Items End Sub Private Sub Items_ItemAdd(ByVal item As Object) On Error GoTo ErrorHandler Dim dtReceived As Date Dim Msg As Outlook.MailItem Dim objProp As Outlook.UserProperty If TypeName(item) = "MailItem" Then Set Msg = item 'My Code dtReceived = Msg.ReceivedTime 'MsgBox "Date Received is" & dtReceived 'Yes it is running, an early diagnostic line removed Set objProp = item.UserProperties.Add("ReceivedDateOnly", olDateTime, True) objProp.Value = DateSerial(Year(dtReceived), Month(dtReceived), Day(dtReceived)) Msg.Save 'Mailitem needs saved now that it has been updated 'Last of my original code End If ProgramExit: Exit Sub ErrorHandler: MsgBox Err.Number & " - " & Err.Description Resume ProgramExit End Sub
Остальные вопросы:
- Код срабатывает только при получении сообщения и не обновляет сообщения, уже находящиеся в вашем OST / PST (вещи на вашем компьютере) - я обошел это, убив мой ost и позволив ему обработать все заново (потому что OST является локальной копией того, что включено Exchange Server, может быть не рекомендуется с PST) ... Не очень быстро, если у вас большое количество электронных писем, как у меня, потому что оно входит и модифицирует их после загрузки, а затем сохраняет изменения ... Это больше заботится о других, так как лодка отплыла за мной. Хорошей идеей было бы написать код для циклического перебора почтового ящика, отражающего процесс, но сейчас я этого не делаю.
- Кнопка «Форматировать столбцы» не влияет на поле, отображаемое в заголовке группы. Поскольку дата без времени фактически является полночью, первым моментом дня, она отображается как «ReceivedDateOnly: DDDD, MMMM DD, YYYY 12:00 AM: X элементов (ов) Y непрочитано». Хотя это огромное улучшение для меня, это не идеально. Если вам нужно указать это, чтобы показать поле группы, чтобы увидеть дату, любой, кто использует это, может захотеть рассмотреть пересмотренное более короткое имя поля.
- За исключением худшего для последнего, он работает только с объектами mailitem, то есть с обычными электронными письмами. Он ничего не делает с календарем в стиле «электронная почта» (приглашения на собрания). Затем при группировке пользовательское поле не изменяется при получении, и вместо отображения даты раздела отображается «Нет». Так как вы, очевидно, сортируете Descending, чтобы сначала показывать самые последние, это ставит его в конец списка.
За пределами этого последнего выпуска я терплю это и наслаждаюсь тем, что полученная дата является временем. Очевидно, мой код нуждается в улучшении для другого типа. Я знаю, с чем покопаться, чтобы исправить это, но пока я готовлю эту проблему и приветствую понимание или исправления для любой из проблем.
0 ответов на вопрос
Похожие вопросы
-
10
Outlook 2007 не закрывается
-
4
Как синхронизировать контакты Outlook с GMail и Windows Mobile?
-
2
Синхронизировать Google, календарь Outlook и контакты
-
-
3
Восстановление Outlook "у вас есть почта" значок
-
5
Есть ли способ «восстановить» .pst (личная папка Outlook) или .ost (файл автономной папки)?
-
2
Почему vcard не приходит в Gmail?
-
9
Есть ли хорошие клиенты Exchange для замены Outlook?
-
7
Должен ли механизм визуализации HTML в outlook 2010 соответствовать стандартам?
-
1
Создание второй личной папки в MS Outlook
-
2
Как получить доступ к веб-сайту Microsoft Office Outlook?