在我的程序中,我必须加载一个 excel 文件。此文件可以具有以下扩展名:[.xls][.xlsx][.xlsm][.xlsb]。
Excel07+ 可以自然处理所有这些,但要在 Excel2003 中使用 [.xlsx][.xlsm][.xlsb],您必须安装http://www.microsoft.com/en-us/download/details。 aspx?id=3
这是我的代码来确定安装了哪个excel版本。问题:我不知道如何确定兼容包的安装(标记为 +++)
if (ExtractFileExt(sFileNameVorlage) = '.xlsx') or
(ExtractFileExt(sFileNameVorlage) = '.xlsm') or
(ExtractFileExt(sFileNameVorlage) = '.xlsb') then
begin
//determine version of excel (lower or equal 2003 )
if StrToInt(Copy(oVersionscheck.version,1,2)) <= 11 then
begin
// equal 2003
if StrToInt(Copy(oVersionscheck.version,1,2)) = 11 then
if not +++compatibility pack installed?+++ then
begin
ShowMessage('Warning: Excel can´t open this file.');
oVersionscheck.Quit;
oVersionscheck := unassigned;
Exit;
end;
end;
oVersionscheck.Quit;
end;
也许有人知道解决方案。