2012-02-05 17 views
2

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

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

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

Алан

ответ

0

Если вы можете импортировать файл вручную, вы можете его автоматизировать. С помощью 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, чтобы запускать его ежедневно.

Tamar

+0

Спасибо Тамар, это то решение, которое я искал. Я проверю программный доступ и посмотрю, как я нахожусь. С уважением. –

+0

Привет, Тамар. Сейчас я вернулся к этому проекту и хотел бы продолжить его. Вы упомянули: «Вам, вероятно, придется просверлить и захватить ссылку на какой-либо объект, прежде чем вызывать все, что есть в методе». Знаете ли вы какие-либо ресурсы, где я могу найти подходящие методы или свойства объекта Outlook? Благодарю. –

+0

Вы не сказали, какую версию Outlook, но вам стоит начать: http://msdn.microsoft.com/en-us/library/ee861520.aspx. Если вы используете Outlook 2003 или более раннюю версию, справка VBA, которая является частью справки Outlook, очень хороша. –

0

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

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

+0

Turion - благодарю вас за ответ. Я не знаю, в каком формате Outlook хранит ваши контактные данные (просто показывает мое незнание темы!). Я проверю его и отчитаю. Я знаю о модуле csv Python, и в конечном итоге мне, возможно, придется прибегнуть к его использованию, но я надеялся на решение, которое автоматически выполняет то, что делает ручной импорт (возможно, из командной строки или с использованием OLE), что не требует знание сохраненного формата, только формат, в котором представлены импортированные данные. С уважением, –

+0

", который автоматически делает то, что делает ручной импорт" Outlook не является открытым исходным кодом, поэтому нет возможности «использовать» его функции. (преимущество Fourthseventh программного обеспечения с открытым исходным кодом за проприетарное программное обеспечение) – Turion

Смежные вопросы