Загрузка рабочей книги проекта непосредственно из панели надстроек проекта - PullRequest
0 голосов
/ 22 декабря 2018

Мы создаем приложение-надстройку для Microsoft Project, которым пользователь будет управлять с боковой панели.

У нас есть 2 рабочие книги, которые включены в работу приложения.В настоящее время мы требуем, чтобы пользователь загрузил книги, а затем открыл их вручную.Мы пытаемся, чтобы пользователь мог щелкнуть ссылку и загрузить нужные книги непосредственно в Project, не загружая и не открывая их вручную.

Из нашего исследования (например, Можем ли мы загрузить файл Excel в надстройку Office.js ), кажется, что это невозможно сделать.Кто-нибудь может подтвердить, правда это или нет?И, если это возможно, направьте нас в правильном направлении, чтобы понять, как мы можем добиться этого.

Большое спасибо за любую помощь, которую вы можете предложить ..

1 Ответ

0 голосов
/ 23 декабря 2018

Вы можете абсолютно прочитать из файла Excel в MS Project:

Сначала создайте соединение:

Public Function GetConnection(filename As String) As System.Data.OleDb.OleDbConnection

    Dim MyConnection As System.Data.OleDb.OleDbConnection
    Dim ConnStringBuilder As New Data.OleDb.OleDbConnectionStringBuilder

    'Build the connection string    
    ConnStringBuilder.Provider = "Microsoft.ACE.OLEDB.12.0"

    'Need the full path string to your Excel file 
    ConnStringBuilder.DataSource = "[full path and filename goes here]"

    'Need this part to work with Excel, note that it assumes you have a header row
    ConnStringBuilder.Add("Extended Properties", "Excel 12.0 Xml;HDR=YES")
    MyConnection = New System.Data.OleDb.OleDbConnection(ConnStringBuilder.ConnectionString)

    ConnStringBuilder = Nothing
    Return MyConnection

End Function

Как только у вас есть соединение, вы можете использовать TableAdapters для обработки листов Excelкак таблицы базы данных.Обратите внимание, что это хорошо работает только для чтения.Вы можете писать в Excel, но движок Jet (ACE.OLEDB.12.0) не поддерживает удаление напрямую (по крайней мере, я смог найти).

Существует много того, как научиться использовать TableAdapters.Это может дать вам некоторые подсказки, с чего начать:

Чтение и запись документов Excel с использованием OLEDB

...