如果当前没有安装Excel的版本,是否可以添加引用?

时间:2010-09-06 20:26:46

标签: excel vba excel-2000

使用Visual Basic 2008 Express Edition

涉及2台PC:

PC1安装了VBEE和Excel 2007 PC2(目标机器)没有安装VBEE,并且有Excel 2000

我想要完成的是在PC1上构建一个应用程序,以便在PC2上使用。

当然,当我在构建期间引用12.0库然后尝试在目标机器上使用9.0运行时,我得到一个“找不到12.0对象库”消息。另外,我不能使用后期绑定(如下所示):PC2的安全设置显然禁止此...

    Dim objExcel As Object 'Excel.Application
    Dim objWB As Object 'Excel.Workbook
    Dim objWS As Object 'Excel.Worksheet
    Dim objRng As Object 'Excel.Range

    Try
        'Try to Open Excel, Add a workbook and worksheet
        objExcel = CreateObject("Excel.Application") 'New Excel.Application

    etc...

那么,有没有办法在不与VBEE安装在同一台机器上的情况下添加对Excel 9.0的引用?

还有其他方法吗?

1 个答案:

答案 0 :(得分:0)

当然,我一直这样做。您需要从具有旧版本的计算机中获取TLB(或您必须引用的主EXE或DLL),将IT复制到您的开发计算机(最好在项目的某个位置,以便将其放在VCS下,因为它只是因为项目源的一部分,然后设置对该DLL的引用。

我已经成功地使用Word,Excel,PPT和Outlook完成了这项工作,编写了一个必须在从Office 2000到2010的所有内容中运行的插件。

我从各种机器中抓取了包含TLB的所有相关TLB和DLL,集中放置它们并引用这些副本。

使用.NET,您甚至可以同时引用几个WORD tlbs(尽管我没有必要实际执行此操作)。使用VB6,你无法真正理解它,但同样,你通常不应该这样做。