2017-10-04 1 views
0
Set ObjWB = Workbooks.Open("c:\Test.xlsx") 

workbooks.open 명령을 사용하면 해당 Excel 통합 문서가 열립니다.VBA를 사용하여 통합 문서를 열지 않고 셀 값을 읽는 방법

Excel 통합 문서를 열지 않고도 셀 값을 읽을 필요가 있습니다.

+2

파일을 열지 않고 파일을 읽을 수 없습니다. 하지만 그 파일을 열고 필요한 값을 읽고 닫을 수 있습니다. –

+0

정말로 필요한 경우 "간접 텍스트"를 검색하십시오. 개인적으로 필자는 통합 문서를 열어 값을 검색하고 통합 문서를 닫습니다. – Zerk

+0

제안 해 주셔서 감사합니다 Peh and Zerk – srivignesh

답변

0

ReadFromClosedWorkbook (워크 북 & 워크 시트)에 매개 변수를 설정 한 후 서브 GetValue을 실행하십시오. 하나 또는 둘 모두를 호출 프로 시저의 인수로 전달할 수 있습니다.

Sub GetValue() 
    Debug.Print ReadFromClosedWorkbook("A1") 
End Sub 

Private Function ReadFromClosedWorkbook(Target As String) As Variant 

    Const WbFullName = "D:\My Documents\Your file name.xlsx" 

    Dim PathName As String 
    Dim WbName As String 
    Dim WsName As String 
    Dim Target As String 
    Dim Sp() As String 

    WsName = "My Worksheet's Name" 

    Sp = Split(WbFullName, "\") 
    WbName = Sp(UBound(Sp)) 
    ReDim Preserve Sp(UBound(Sp) - 1) 
    PathName = Join(Sp, "\") & "\" 
    If Len(Dir(WbFullName)) Then 
     Target = "'" & PathName & _ 
       "[" & WbName & "]" & WsName & _ 
       "'!" & Range(Target).Address(True, True, xlR1C1) 
     ReadFromClosedWorkbook = ExecuteExcel4Macro(Target) 
    End If 
End Function 
+0

답변을 얻었으므로 GetObject 함수를 추가하여 통합 문서를 열지 않고 셀 값을 읽습니다. Set ObjWB = GetObject ("c : \ Test.xlsx") – srivignesh

+0

제안 해 주셔서 감사합니다 – srivignesh

관련 문제