Автоматический импорт CSV в Outlook - PullRequest
2 голосов
/ 05 февраля 2012

У меня есть ежедневный CSV-файл, содержащий контактные данные, которые я хочу загрузить в контактный файл Outlook (перезаписывая файл каждый раз, не добавляя). Я знаю, что могу импортировать CSV-файл вручную, но это трудная задача каждый день. Кто-нибудь есть идеи, как я могу автоматизировать процесс (например, запустив запланированный пакетный или исполняемый файл)? Я хорошо знаю Python и Visual Foxpro, поэтому, если требуется решение для программирования, предпочтителен любой из этих языков.

Кроме того, я хочу убедиться, что импортируемые поля находятся в правильном порядке. Где найти список отображения полей по умолчанию для файла контактов?

Любая помощь будет оценена.

Alan

Ответы [ 2 ]

0 голосов
/ 07 февраля 2012

Если вы можете импортировать файл вручную, вы, безусловно, можете автоматизировать его.С помощью VFP вы создадите экземпляр Outlook, создадите экземпляр пространства имен и затем вызовете любой метод, импортирующий CSV.

oOutlook = CREATEOBJECT("Outlook.Application")
oNS = oOutlook.GetNameSpace("MAPI")
* You'll probably have to drill in and grab a reference
* to some object before calling whatever the method is

Одна из проблем, связанных с автоматизацией Outlook, заключается в том, что ей нравится защищать себя от кода, касающегося некоторых вещей, и я не удивлюсь, если среди них будут записи контактов.Если это для вашего личного использования, вы можете отключить эту защиту.Особенности зависят от версии.В Outlook 2010 это файл |Параметры, затем Центр управления безопасностью, затем Программный доступ.

Получив работающий код, создайте EXE-файл и используйте планировщик задач Windows для его ежедневного запуска.

0 голосов
/ 05 февраля 2012

В Python есть модуль csv: http://docs.python.org/library/csv.html Это позволяет обрабатывать CSV-файлы безболезненно.

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

...