Я работаю над проектом, и мне нужно экспортировать существующие заметки из Outlook в текстовый файл. Мне удалось собрать рабочий скрипт, который удаляет запрещенные символы из заметки и называет текстовый файл темой / первой строкой заметки, но я сталкиваюсь с проблемой длины файла. Мне нужно, чтобы скрипт мог обрезать имя файла после числа символов X, чтобы создаваемый текстовый файл не превышал Windows максимальное количество символов. Я не могу понять, как это сделать, не прибегая к общей схеме имен c Note1.txt, Note2.txt, которая не будет работать в ситуации, для которой мне нужны текстовые файлы, они должны сохранять столько же имени, насколько это возможно для последующей идентификации.
Это то, что я имею до сих пор:
Sub NotesToTXT()
myfolder = "c:\appsnotes\notes\"
Set sanitize = CreateObject("vbscript.regexp")
sanitize.IgnoreCase = True
sanitize.Global = True
Set myNote = Application.GetNamespace("MAPI").PickFolder
For cnt = 1 To myNote.Items.Count
sanitize.Pattern = "(((?![a-zA-Z0-9,@,{,},#,&,%,=,+,_,-,^,(,),;,',$,,]).) )+"
noteName = sanitize.Replace(myNote.Items(cnt).Subject, "_")
sanitize.Pattern = "\-+"
noteName = sanitize.Replace(noteName, "-")
myNote.Items(cnt).SaveAs myfolder & noteName2 & ".txt", OlSaveAsType.olTXT
Next
End Sub