Skip to content
조회 수 30518 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

엑셀파일 열지않고 내용 불러오기


방법1. ExecuteExcel4Macro 함수를 통하여 불러오는 방법.

방법2. DAO를 통합 방법.



strpath = ThisWorkbook.Path

Path = Left(strpath, InStrRev(strpath, "\") - 1)
Path = Path & "\";strFile = "파일명.xls"
strSheet = "쉬트명"
strAddress = Cells(X,Y).Address
변수 = ReadValue(Path, strFile, strSheet, strAddress)


펑션
Function ReadValue(Path, File, sht, Rng) As Variant
Dim Msg As String
Dim strTemp As String
If Trim(Right(Path, 1)) <> "\" Then Path = Path & "\"
'데이터가 있는 원본 파일이 없으면 에러를 표시 매크로를 종료.
If Dir(Path & File) = "" Then;ReadValue = "해당 파일이 없습니다"
Exit Function
End If
Msg = "'" & Path & "[" & File & "]" & sht & "'!" & Range(Rng).Range("a1").Address(, , xlR1C1);ReadValue = ExecuteExcel4Macro(Msg)
End Function

은근 쓸일이 많은 옵션



http://blog.naver.com/PostView.nhn?blogId=maxzon&logNo=70110710713


Option Explicit

Sub File_Read()


'쓰여질 변수 설정, 어떨땐 필요하나 싶다.

Dim lngCount As Long

Dim varData(1 To 2, 1 To 2) As Variant

Dim i As Long, j As Long, k As Long

Dim varArray As Variant

Dim strFileName As String, strTemp As String, strPath As String, strArg As String


'파일 불러오기(*.xls를 *.csv 등으로 변경도 가능하겠지.

    varArray = Application.GetOpenFilename("ExcelFile *.xls,*.xls", _

       Title:="집계할 엑셀 파일들을 Shift버튼을 눌러 모두 선택하십시오!", MultiSelect:=True)

       

       

    If TypeName(varArray) = "Boolean" Then Exit Sub

    lngCount = UBound(varArray)

    strTemp = varArray(1)

    strPath = Left$(strTemp, Len(strTemp) - Len(Dir(strTemp)))

    

    

    For i = 1 To lngCount '조회할 문서의 수만큼 횟수를 실행하겠다는 의미

      strFileName = Dir(varArray(i))

      

      

'j와 k는 A1:B2(A1,B1,A2,B2) 까지의 범위를 의미한다.

'즉, j는 A,b,c 등의 열을, k는 1,2,3 등의 행을 의미하는 것.

      

      For j = 1 To 2

      

        For k = 1 To 2

          strArg = "'" & strPath & "[" & strFileName & "]" & "Sheet1" & "'!" & _

            Range(Cells(j, k).Address).Address(ReferenceStyle:=xlR1C1)

            '위 빨간색부분이 Sheet1시트의 A1:B2영역을 의미하게 된다.


          varData(j, k) = Application.ExecuteExcel4Macro(strArg)

        Next k

      Next j

      Cells((i - 1) * 4 + 1, 1) = strTemp & " 의 내용"

      Range(Cells((i - 1) * 4 + 2, 1), Cells((i - 1) * 4 + 3, 2)) = varData

    Next i

End Sub



로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
477 컴퓨터잡담 텍스트를 한글로 읽어주는 사이트 1 file 2013.04.18 9527
476 Server 웹 페이지에 HTML5 동영상 컨트롤 추가 10 2013.04.02 9458
475 컴퓨터잡담 rss리더기 2010.03.12 9431
474 컴퓨터잡담 rss리더기 2010.03.12 9399
473 AutoHotKey ahk) Send an email 메일발송하기 2018.01.17 9390
472 WindowsTip 윈도우 콘솔(CMD), DIR 명령어 1 2013.02.18 9384
471 컴퓨터잡담 윈도우7, 비스타 관리자 권한 획득하기 13 2011.12.26 9343
470 WindowsTip 윈도우8 복원 및 초기화 방법 2013.08.31 9318
469 컴퓨터잡담 rss리더기 2010.03.12 9305
468 컴퓨터잡담 전자회로 기초 1 file 2012.06.22 9281
467 파이썬 Visual Studio Code 파이썬 인터프리터 경로 변경하기 2022.03.09 9265
466 컴퓨터잡담 rss리더기 2010.03.12 9260
465 파이썬 파이썬을 이용하여 매크로 만들기 2023.01.13 9234
464 컴퓨터잡담 블로그/사이트의 키워드 훔쳐보기^^;; 2010.04.21 9207
463 WindowsTip 윈도우10 ALT + TAB 창 전환이 안될 때 대처방법 file 2022.03.09 9185
462 컴퓨터잡담 레지스트리 컨트롤로 XP의 가상메모리 페이징 파일의 강제 자동설정을 끌 수 있는 방법 2010.10.02 9075
461 컴퓨터잡담 무선 인터넷의 속도와 품질 이해 file 2013.04.27 9024
460 컴퓨터잡담 LG G5 기능 어디한번 보자 file 2016.02.21 8993
459 WindowsTip Windows 7 인터넷속도 향상시키기 2013.01.25 8991
458 컴퓨터잡담 wm_syscommand 등의 값 1 3 2009.12.15 8948
Board Pagination Prev 1 ... 21 22 23 24 25 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소