请问如何突破各种限制或错误直接读取EXCEL文件里的内容?
我手头上经常接收到各部门、各客户发送来的EXCEL文件,完全没有一个标准格式以及版本,有的还是OFFICE2007、有的是OFFICE2010、有的是OFFICE2016或者更高;有的客户发来的是只读性质的,有的可能是用什么工具从PDF转的,有的文件名带有空格的,有的文件名带有符号的,杂七杂八,乱七八糟。导致我有时在OFFICE2010环境下打开文件,直接飘红,提示“OFFICE已检测到此文件存在问题,编辑此文件可能会损害您的计算机,请单击查看详细信息”。这种情况经常发生,人都快发疯了。通过类似于如下的程序打开该类文件,经常报错:
程序代码:Dim xlApp As Excel.Application
Dim xlBook As Excel.WorkBook
Dim xlSheet As Excel.Worksheet
Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象
Set xlBook = xlApp.Workbooks.Open("文件名") '打开已经存在的EXCEL工件簿文件
xlApp.Visible = True '设置EXCEL对象可见(或不可见)
Set xlSheet = xlBook.Worksheets("表名") '设置活动工作表想请教一下各位高手,是否有类似于如下的方法,直接读取EXCEL文件的内容,而不打开文件(防止什么类似文件名不规范等问题导致报错):
程序代码: Open Text1.Text For Binary As #1
ReDim aryContent(LOF(1) - 1)
Get #1, , aryContent
Close #1
strWj = StrConv(aryContent, vbUnicode)
strJ = Split(strWj, vbCrLf)
For ii = 0 To UBound(strJ)
b() = Split(strJ(ii), ",")
If ii > 33 And IsNumeric(Left(strJ(ii), 1)) = True Then
PIC(b(3), b(4)) = b(2)
End If
Next ii是否可用ADO方式?从来没有用过,能否给出直接读取EXCEL文件内容,并把每一行都写入一维数组?
我也想过能否把EXCEL文件转换成CSV文件,但是那也是要先打开,又要触发各种各样的问题:
想请各位高手给出一个解决方案,方便的话希望能够给出相应的程序,谢谢各位!









