2009-05-01 4 views
1

Как отслеживать электронную почту в и из общего в ящике Outlook при использовании excel? У нас большое количество электронных писем, и нам нужно отслеживать ответы, чтобы убедиться, что электронные письма не потерялись.Отслеживание сообщений электронной почты в Outlook с помощью excel

Есть ли способ получить результаты расширенного поиска на листе Excel?

ответ

3

Какой вид вы настраиваете в расширенной находке? Поскольку вы можете написать макросы VBA, чтобы вытащить элементы из вашего почтового ящика и поместить их в себя. Кроме того, опция предварительного поиска не находится в объектной модели Outlook, поэтому она зависит от того, что вы пытаетесь настроить. Так вы можете сказать мне, что вы делаете в расширенной находке?? 76mel

Ok Использование Outlook таблицы вы можете поместить это в Excel как макро
Использование «sfilter», чтобы определить ваши предварительные критерии поиска.
Вам нужно будет перекачать данные в Excel внизу.

Sub GetMail() 


Dim oApp As Outlook.Application 
Dim oFolder As Outlook.Folder 
Dim oNameSpace As Outlook.Namespace 
Dim emailCount As Integer 
Dim counter As Integer 
Dim sfilter As String 
Dim oRow As Outlook.Row 
Dim oTable As Outlook.Table 
Dim i As Outlook.MailItem 



Set oApp = CreateObject("Outlook.Application") 
Set oNameSpace = oApp.Session 
Set oFolder = oNameSpace.GetDefaultFolder(olFolderInbox) 


'Add what ever filter you want here using DASL 
sfilter = "[LastModificationTime] > '5/1/2005'" 
'Restrict with Filter 
Set oTable = oFolder.GetTable(sfilter) 

'Remove all columns in the default column set 
oTable.Columns.RemoveAll 
'Specify desired properties 

With oTable.Columns 

    .Add ("EntryID") 
    .Add ("Subject") 
    .Add ("ReceivedTime") 

End With 

'Enumerate the table using test for EndOfTable 
'Pump it into your worksheet 
Do Until (oTable.EndOfTable) 
    Set oRow = oTable.GetNextRow() 
    Debug.Print (oRow("EntryID")) 
    Debug.Print (oRow("Subject")) 
    Debug.Print (oRow("ReceivedTime")) 
Loop 


'Clean up 
Set oTable = Nothing 
Set oFolder = Nothing 
Set oNameSpace = Nothing 
Set oApp = Nothing 

End Sub

+0

я использовал передовые находку для поиска почтового ящика по дате; Я не хочу изменять какие-либо сообщения электронной почты в папке «Входящие», но просто чтобы сделать копию строки темы и даты, полученной по каждому электронному письму на листе Excel. В основном я пытаюсь провести различие между ответами на уже существующие проблемы и «свежими» проблемами, которые нам необходимо решить, целью которых является составление списка нерешенных вопросов, чтобы мы могли легко выявить долго нерешенные проблемы, возникшие нам. У нас были проблемы с электронной почтой, которые остались без ответа и забыты. – Niall

+0

Хорошо, что делать. Есть несколько способов. 1.Написать добавление в Outlook для экспорта> Excel 2.Написать Marco и VBA в Excel, который запрашивает почтовый ящик и вставлять данные – 76mel

+0

Добавили код для Excel Macro выше. – 76mel

2

Возможно, вам стоит инвестировать в такой инструмент, как FogBugz который может обрабатывать входящие письма, фильтровать спам и отслеживать ответы.

0

Я нашел меру остановки пробела; просто выделите все результаты, полученные из расширенной находки, затем ctrl + A, затем ctrl + C, затем вы можете вставить результаты в excel (ctrl + V).

Еще хотелось бы услышать о любых других решениях.

0

Excel не делает это хорошо. В моей компании мы просто используем флаги для чего-то срочного. Когда кто-то отвечает клиенту, они перетаскивают исходное сообщение в свою папку в общем почтовом ящике.