我已经读了十几篇关于这个的帖子,但我不能让它工作。我正在导入地址的电子表格。邮政编码列包含5个数字的邮政编码、9个数字的邮政编码和5-4个邮政编码(5个数字、破折号和4个数字)。(对不起,我受用户摆布,这不是我能控制的事情)。
但是无论我做什么,我都不能让它们全部通过OLEDB导入。5-4区域始终作为null导入。
在HKEY_LOCAL_MACHINE\SOFTWAREWow6432NodeMicrosoft\Jet\4.0\Engines\中
ExcelImportMixedTypes=Text
TypeGuessRows=0
我已经尝试了32位模式和64位模式。输入的电子表格是.XLS格式的(对不起,我受用户的摆布,我不能强迫他们升级)。
这是我的连接字符串。
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + strServerFileName + ";Mode=Read;Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1
我会很乐意张贴电子表格,如果这有帮助。
根据我的经验,OLEDB是非常不可靠的。有没有其他方法可以可靠地导入Excel工作表?
发布于 2014-06-23 10:29:12
我在Access中指向Excel工作簿的链接表中也遇到了问题。然而,我确实让它在VBScript中工作了。我认为如果您使用的是ACE,则需要使用此密钥:
HKLM\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Excel\TypeGuessRows
这指向相同的键(更改一个,另一个也更改):
HKLM\SOFTWARE\Wow6432Node\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Excel\TypeGuessRows
希望这能帮上忙。
发布于 2014-06-23 05:32:31
您发布的连接字符串是用于.xlsx文件,而不是用于.xls文件。试着改编this version:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myOldExcelFile.xls;
Extended Properties="Excel 8.0;HDR=YES;IMEX=1";
https://stackoverflow.com/questions/24348498
复制相似问题