시작페이지로 시작페이지로
즐겨찾기추가 즐겨찾기추가
로그인 회원가입 | 아이디찾기 | 비밀번호찾기 | 장바구니 모바일모드
홈으로 와싸다닷컴 일반 상세보기

트위터로 보내기 미투데이로 보내기 요즘으로 보내기 싸이월드 공감
"엑셀에서 다른 엑셀파일 데이터 불러오기" 도움 부탁드려요
자유게시판 > 상세보기 | 2011-11-06 14:19:39
추천수 7
조회수   3,498

제목

"엑셀에서 다른 엑셀파일 데이터 불러오기" 도움 부탁드려요

글쓴이

문준석 [가입일자 : 2000-10-02]
내용
아...이거 참 어렵네요. VBA를 그렇게 잘하지 못해서 이것저것 검색해 봐도 해결을 못하고 있어요. 하다하다 안되서 와싸다 엑셀고수님 있으시면 도움 부탁드립니다. ㅠ



불러올 파일이 같은경로에 있는 경우는 쉬운데, 다른폴더에 있는 엑셀파일을 불러 와야 하거든요. 소스는 아래와 같은데요, 그나마 구현한게 불러올 엑셀파일이 열려 있어야만 값을 가져오네요. 물론 불러올 엑셀파일이 닫혀있으면 값을 못갖고 오고 #REF! 로 값이 들어옵니다. 구현하는 방식이 틀렸는지 미치겠네요. ㅠ



Dim strPath As String, strFile As String, strSht As String, strCell As String

Dim i As Integer

Dim vFile As Variant



strPath = "C:\Users\AAA\BBB\" → 불러올 파일 경로

strFile = Range("b4") + ".csv" → b4셀에 입력된 파일이름

strSht = Range("b4")

For i = 0 To 3

strCell = Range("a1").Offset(i, 0).Address

Worksheets("raw").Range("a1").Offset(i, 0) = Get_Data(strPath, strFile, strSht, strCell)

Next



Function Get_Data(Path, File, Sht, Cell)

Dim strD As String

strD = "'" & Path & "[" & File & "]" & Sht & "'!" & Range(Cell).Address(, , xlR1C1)

Get_Data = ExecuteExcel4Macro(strD)

End Function





추천스크랩소스보기 목록
문경석 2011-11-06 14:43:40
답글

엑셀 2007이신가요 2003 이신가요? 저도 vba 를잘몰라서 그냥 수식입력줄에다가 아예 쳐버리는데..<br />
그렇게하시면안되나요?<br />
수식입력줄에 = 'C:\Users\AAA\BBB\[파일이름]탭이름'!셀주소 이렇게 치시면될듯한데요<br />
링크된파일숫자가바뀌면 해당 데이터도바뀌는데..<br />
복잡하게 전 vba를 사용하지않아서요 ^^;;; 도움이안된다면죄송합니다

문준석 2011-11-06 14:51:13
답글

답변감사합니다.^^ 단순히 셀과 셀이 링크되는 개념은 아니구요. 문제는 불러올 해당파일이 열려있어야만 값이 들어오는게 문제입니다. ~

이상준 2011-11-06 15:15:02
답글

값이 로딩되어 있지 않은데.. <br />
<br />
못 불러 오는것이 당연한거 아닌가요 ? ㅡ.ㅜ <br />
<br />
((일단 로딩된 값들이 파일안에 저장되는 경우가 있긴 하지만서도.. 로딩될 값들이 변한다면..<br />
그 파일이 오픈 되어야 로딩 되는게 당연한것 같은 생각이 ㅡ.ㅜ))

  • 광고문의 결제관련문의