Вопрос

Я пытаюсь вычистить свои контакты с outlook 2003, которые стали довольно уродливым беспорядком различного форматирования и т. д.

По сути, у меня есть несколько контактов в виде:

0xxxxxxxxx [десять цифр, начиная с 0] 0xxxxxxxx [девять цифр, начиная с 0] 0xxxxxxxx (xxxxx) [те же девять цифр выше, последние пять повторяются в скобках] + xxxxxxx [некоторые случайные " полные " номер с международным телефонным кодом и т. д.]

Я хочу, чтобы все числа соответствовали последнему формату. Алгоритм достаточно прост: для первых двух типов отбросьте 0 и добавьте + YYY, где YYY - код моей страны. То же самое для третьего, но все в скобках опускаем.

Моя проблема в том, что я не знаю, как это сделать. Я написал миллион сценариев в своей жизни на Perl, но я бы предпочел не экспортировать все в текст, обрабатывать его и повторно импортировать; Я хотел бы иметь решение в один клик, которое можно легко перезапустить (например, когда я импортирую новый контакт из каталога моей компании, который входит в одну из форм выше). Я подозреваю, что VBScript - это путь; В Интернете я видел несколько ссылок на доступ к контактам как к объектам, но я не совсем уверен, что это лучший способ начать.

Любые рекомендуемые ресурсы?

Это дубликат https://superuser.com/questions/15913/ скрипт-для-изменения-outlook-2003-contacts ; Я не уверен, какой сайт лучше?

Это было полезно?

Решение

Я бы сказал VBA, а не VBScript.

Sub GetContactsTel()

    Set oFolder = GetNamespace("MAPI").GetDefaultFolder(olFolderContacts)
    ' Loop through all of the items in the folder.
    For i = 1 To oFolder.Items.Count
       Debug.Print oFolder.Items(i).BusinessTelephoneNumber
    Next

End Sub
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top