Экспорт задач из Project в календарь Outlook

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

На рисунке ниже показан общий процесс:

PROJECT 2010

Сначала нужно сохранить файл в формате Excel 2003, поскольку, по какой-то причине Outlook не может импортировать данные из 2010 версии Excel! В связи с обычными проблемами безопасности, мы должны настроить параметры для того, чтобы можно было сохранять файл в более старом формате.

Откройте Project, пройдите в Backstage | Options | Trust Center | Trust Center Settings и установите Prompt when loading files with non-default file format.

Файл, который мы выбрали для этого поста – это шаблон "Дегустация вин” с Office.com.

Нажмите File | Save As и выберите формат Excel 97-2003. Сохранение в формате Excel 97-2003 выдаст такое предупреждение.

Дальше вы сталкиваетесь с мастером экспорта. Цель этого мастера – выбор данных для экспорта из Project.Нам нужно просто экспортировать ресурсы, название задачи, даты начала и окончания.

Ниже показаны скриншоты, которым можно следовать.

Теперь мы можем начать выбирать данные. Нам нужны назначенные данные и мы включим заголовки в наш выбор.

Далее, выберите поля, которые вы хотите экспортировать из Project. В нашем случае это Resource Name, Task Name, Work, Start & Finish.

Предложенные имена будут созданы в полях Excel – вы можете переименовать их по своему усмотрению.

Как только это будет завершено, у вас будет возможность сохранить карту, которую вы создали – это хорошая идея, если вы будете использовать ее не один раз. Посмотрите, как мы назвали свою карту - “Export for Outlook Calendar import”

Итак, следующая ступень.

Excel 2010

Теперь у нас есть файл Excel 97-2003 с одной страницей под названием Assignment_Table1.При открытии его мы видим следующее:

Теперь нам потребуется код VBA, чтобы сделать следующее:

1. Удалить все ненужные строки (значения).

2. Добавить число часов работы к названию задачи.

3. Разделить значения времени Начало и Конец от начальных и конечных дат, чтобы их значения были корректно введены в календарь (08:00, 13:00 и т.д.).

Следующий код VBA обеспечивает выполнение всех вышеперечисленных действий – обратите внимание, что здесь приведен только один вариант, и все название колонок и ресурсов отображены в коде. Вам нужно будет изменить этот код для своей карты экспортированных данных из MSProject.

Sub Format_Dates()
‘ Ben Howard – www.applepark.co.uk October 2011
‘ Excel VBA to modify our

Dim TimePart As String
Dim n As Integer
Dim rowNum As Integer
Dim colNum As Integer

‘ Insert a new column to hold the start time

Columns("E:E").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove

‘Removes rows with the name not equalling Chairperson in column A

Set myRng = Range("A1").CurrentRegion
FirstRow = myRng.Row
Lastrow = FirstRow + myRng.Rows.Count – 1
For rw = Lastrow To FirstRow Step -1
If Cells(rw, "A") <> "Chairperson" Then Rows(rw).Delete
Next

rowNum = 1
colNum = 2

While Cells(rowNum, colNum).Value <> ""
‘contactenate the Name and work value
colNum = 2
Cells(rowNum, colNum).Value = Cells(rowNum, colNum).Value & " – " & Cells(rowNum, colNum + 1).Value
‘split the start and finish time.
colNum = 4
n = InStr(1, Cells(rowNum, colNum).Value, " ")
TimePart = Right(Cells(rowNum, colNum).Value, Len(Cells(rowNum, colNum).Value) – n)
Cells(rowNum, colNum + 1).Value = TimePart
colNum = 6
n = InStr(1, Cells(rowNum, colNum).Value, " ")
TimePart = Right(Cells(rowNum, colNum).Value, Len(Cells(rowNum, colNum).Value) – n)
Cells(rowNum, colNum + 1).Value = TimePart
rowNum = rowNum + 1
Wend

End Sub

Как только вы запустите код VBA, ваш файл Excel будет выглядеть как показано ниже…

Для импорта Outlook требуется определение области названий, поэтому выделите строки и колонки для их импорта.Введите OutlookImport в ячейке Name Range.

Сохраните и закройте Excel – обратите внимание, что по какой-то причине Excel выбирает формат 5.0/95 по умолчанию, так что нужно сохранить его как Save As в формате 97-2003 .

Outlook 2010

Откройте Outlook2010, и если команда Import & Export недоступна, добавьте ее на панель быстрого доступа или на ленту.

Как только команда появится на ленте, выберите значок Import & Export. Это простой мастер, так что мы покажем только некоторые скриншоты.

Выберите файл, который нужно импортировать, и выберите подходящие вам опции.

Выберите календарь, в который нужно импортировать файл. Можно установить для этого новый календарь.

Выберите имя файла для импорта

Сопоставьте поля из таблицы Excel с Outlook. Можно сделать это простым перетаскиванием пунктов слева направо.

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