我有一个错误跟踪系统,它将错误数据导出为 Excel 文件。我想根据这个导出的 excel 文件创建一份报告。我所做的是
- 创建一个链接到导出 Excel 文件的办公数据连接文件。
DBQ=\myfileserver\01_Team_Weekly\Raw\Raw.xlsx;DefaultDir=\myfileserver\01_Team_Weekly\Raw\;Driver={Microsoft Excel 驱动程序 (*.xls、*.xlsx、*.xlsm、*.xlsb)};DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;ReadOnly=1;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes; SELECT * FROM
\\myfileserver\01_Team_Weekly\Raw\Raw.xlsx
.general_report$
- 然后我通过 Excel 数据连接功能导入外部数据。
这里的问题是“我发现导入的数据在单个单元格中有 255 个字符的限制。”
有没有办法修改最大 255 个字符的限制?我不确定该问题是由“Office 数据连接”功能还是 Excel 本身引起的。
首先感谢你的帮助。
答案1
此问题的根本原因是 csv 文件的字段类型。Jet 4.0LEDB 源将猜测前 8 行的 csv 字段数据类型。因此,如果前 8 行都是少于 255 个字符的数据,则相应的列将被视为字符串 - Unicode 字符串,长度为 255 (DT_WSTR) (http://msdn.microsoft.com/en-us/library/ms141683.aspx)。
解决方法:1. 在第一行放置一些虚拟数据,数据长度超过 255。或 2. 更新寄存器 ==>http://support.microsoft.com/kb/281517
顺便问一下,没有办法定义 csv 字段的数据类型吗?
答案2
将文件导出为 CSV,然后以 Excel 形式打开以进行报告。