Создание одного файла из нескольких заметок в Outlook VBA - PullRequest
1 голос
/ 22 октября 2010

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

Sub saveNotes()
   Set myNote = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderNotes)
   For ibi = 1 To myNote.Items.Count
     fname = myNote.Items(ibi).Subject
     myNote.Items(ibi).SaveAs "C:\Temp\" & fname & ".txt", 0
   Next
End Sub

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

Чтобы дать вам представление о количестве данных и их эффективности, существуют сотни заметоксо средним размером 1024 символов.

1 Ответ

2 голосов
/ 22 октября 2010

Этот код откроет текстовый файл для вывода и запишет измененное время и текст каждой заметки в текстовый файл.Файл будет находиться в папке «Мои документы» и будет называться AllNotesYYYYMMDD.txt.Вы можете изменить этот путь в зависимости от вашей операционной системы и того места, где вы хотите сохранить файл.

Sub SaveNotes()

    Dim fNotes As MAPIFolder
    Dim ni As NoteItem
    Dim sFile As String
    Dim lFile As Long

    Set fNotes = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderNotes)
    lFile = FreeFile
    sFile = Environ$("USERPROFILE") & "\My Documents\AllNotes" & Format(Date, "yyyymmdd") & ".txt"

    Open sFile For Output As lFile

    For Each ni In fNotes.Items
        Print #lFile, "Modified:" & vbTab & ni.LastModificationTime & vbNewLine & ni.Body
        Print #lFile, "-------------------------------"
    Next ni

    Close lFile

End Sub
...