我的VB.NET(3.5)应用程序生成Excel报告。
较新版本的Excel支持Office Open XML文件格式,而旧版本则不支持。
我希望我的应用程序能够确定本地计算机上安装了哪个版本的Excel,并使用不同的方法生成报告(较新版本:通过生成XML文件。旧版本:使用Excel Automation)。
如何识别本地计算机上安装的Excel版本?
答案 0 :(得分:4)
您可以打开Excel实例并检查版本:
Dim appExcel As Object
appExcel = CreateObject("Excel.Application")
With appExcel
Debug.Print(Val(.application.version))
.quit()
appExcel = Nothing
End With
答案 1 :(得分:3)
您可以查看以下注册表项之一:
HKEY_USERS\.DEFAULT\Software\Microsoft\Office\11.0\Excel
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel
您应该查找密钥的存在,其中包含“Excel”,因为您可以安装Office 2003,并且将visio 2007放在一边,因此两个密钥都将存在,但只有一个密钥具有Excel子项:
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0
号码/版本对应