#2
约定的童话2023-11-01 07:40
|
通过类似于如下的程序打开该类文件,经常报错:
程序代码:
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("表名") '设置活动工作表
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
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文件,但是那也是要先打开,又要触发各种各样的问题:
想请各位高手给出一个解决方案,方便的话希望能够给出相应的程序,谢谢各位!