나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 날개 (skfro11)

추천:  2
파일:     조회:  2412
제목:   [vba]닫혀 있는 파일에서 조건에 맞는 값 가져오기
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(95,97,2000,xp,2003,2007):

* 아래줄에 질문을 작성하세요 >>
안녕하세요..
이렇게 막힐때만 찾아와서 죄송합니다.ㅠ.ㅠ

dpath = "d:\입고1.xlsm"

CheckSTName.Value = Application.VLookup(CVar(BarCode), Workbooks(dpath).Worksheets("sheet1").Range("C:K"), 6, 0)

질문과 같이 닫혀 있는 파일에서 조건에 맞는 값을 vlookup 으로
값을 가져와서 vba 폼에 넣을려고 vba를 만들고 있습니다.

위 내용과 같이 입력을 했더니 아래첨자 사용 오류라고 뜨면서 안되네요.

파일을 열고 위 문장에서 Workbooks(dpath). 를 삭제하면 제대로 작동하는데
이유를 찾을수가 없네요. 혹시 어떻게 해결방법이 있을까요?
 
[불량 게시물 신고]  
참서리vba로 파일을 일단 열고
  dim wb as workbook
  set wb = workbooks.open(dpath)
  dim rng as range 
  set rng =wb.worksheets("sheet1").range("C:K")

  CheckSTName.Value = Application.VLookup(CVar(BarCode),rng, 6, 0)

  wb.close
11-27 (18:03)
삭제 ■신고
날개답변 감사합니다.

참서리님께서 가르켜 주신대로 해서 vba를 작동시켜보니.
해당 입고1.xlsm이 열리고 해당 값을 가져오고 닫는거 같네요.

엑셀 서식에서 
='[입고2.xlsm]sheet1'!$A$5 
이런 식으로 파일을 열지 않고 하는 방법은 없을까요..?
11-28 (13:53)
삭제 ■신고
        
  

작성일 : 2018-11-27(17:17)
최종수정일 : 2018-11-27(17:17)