2010-03-16 2 views
0

어떻게 vb6에서 코드를 작성하여 Excel 파일을 찾을 수 있습니까?EOF of vb6

아무도 도와 줄 수 있습니까?

내가이 코딩을 시도하고 작동 ..

--->

Dim excelApp as Excel.Application 

Dim excelWB as Excel.Workbook 

Set excelApp = New Excel.Application 

Set excelWB = excelApp.Workbooks.Open("D:\Book1.xls") 

Dim xlsRow as Long 

Dim EOF as Boolean 

xlsRow = 1 

Do While (EOF = False) 

    If (excelWB.Sheets("Sheet1").Cells(xlsRow, 1).Value = "") Then 

    EOF = True 

    Else 

    xlsRow = xlsRow + 1 

    End If 

Loop 

< ---

이 코드가 작동하지만, 유일한 문제는 열입니다 1이 점검되고 나머지는 점검되지 않습니다. 누구든지이 코드를 개선하여 모든 행과 Excel 셀의 열을 확인하는 방법에 대해 도움을 줄 수 있습니까?

답변

1

VB6에 예제를로드했지만 완전한 intellisense를 얻지 못했기 때문에 필자의 참조가 잘못되었다고 생각하지 않습니다.

그러나 Excel 응용 프로그램 개체를 사용하면 Excel 파일 액세스가 느려지므로 권장하지 않습니다.

ADODB를 사용하는 것이 좋습니다.

예컨대 것은 (sFilename)

Set cnExcel = New ADODB.Connection 

cnExcel.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
    "Data Source=" & sFilename & ";" & _ 
    "Extended Properties=""Excel 8.0;IMEX=1;HDR=NO""" 

이 그 다음을 읽어 스프레드 시트에 연결합니다. ADODB는 귀하를 위해 EOF 업무를 수행합니다. 여기 이것은 그냥 빨리 맛 행 0과 1

rs.Open "select * from " & sSheetName, cnExcel, adOpenDynamic, adLockOptimistic 

While Not rs.EOF 
    debug.print rs(0) 
    debug.print rs(1) 
    rs.MoveNext 
Wend 

를 표시하지만 자원은 이런 식으로하기에 관하여 그물에가와 엑셀 개체를 사용하는 것이 빠른 방법입니다! 위의 내용은 잘라내어 내 코드에서 붙여 넣어서 작동한다는 것을 알고 있습니다 !!