直接从项目加载项面板加载项目工作簿

时间:2018-12-21 23:02:19

标签: office-addins ms-project

我们正在为Microsoft Project创建一个加载项应用,用户可以从侧面板进行操作。

作为应用程序体验的一部分,我们包含2个工作簿。当前,我们要求用户下载书籍,然后手动打开它们。我们试图使用户能够单击链接并直接在Project中加载有问题的书籍,而不必下载和手动打开它们。

根据我们的研究(例如Can we load Excel file in Office.js Add-in),这似乎是不可行的。谁能确认那是真的吗?并且,如果有可能,请向我们指出正确的方向,以实现该目标。

非常感谢您可以提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

您绝对可以从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)不直接支持Delete(至少我已经能够找到)。

有很多要学习如何使用TableAdapters的知识。这可能会为您提供一些入门的线索:

Read and Write Excel Documents Using OLEDB

相关问题