Please Enable JavaScript!
Gon[ Enable JavaScript ]

엑셀 VBA 웹브라우저(인터넷 익스플로러) 띄우는 방법

엑셀(Excel)/VBA
반응형

엑셀에는 사용자가 직접 화면을 꾸밀 수 있도록 컨트롤을 제공합니다. 예를 들어 버튼이나 체크박스, 콤보박스, 리스트 박스 등을 말합니다. 엑셀 시트내에 양식 컨트롤 중 하나인 버튼을 추가해서 웹브라우저를 띄워보겠습니다. 웹브라우저는 사용자가 입력한 주소로 이동하도록 VBA 코드를 만들었습니다. 

 

 

 

먼저 매크로를 실행할 버튼을 하나 만들어 보도록 하겠습니다. 클릭하면 브라우저가 뜨는 형태입니다. 이렇게 하지 않고 사용자 정의 함수를 만들어서 인수로 URL 을 받으셔도 됩니다. 매크로를 실행할 버튼을 만들기 위해 개발도구 탭을 클릭합니다. 개발도구탭에 보시면 [삽입] 리본메뉴가 있습니다. 삽입에는 여러 컨트롤들이 있는데 그 중에서 양식 컨트롤에 버튼을 추가합니다.

엑셀(Excel) VBA - 웹브라우저(인터넷 익스플로러) 띄우는 방법

 

버튼을 추가하는 순간 매크로 지정 팝업창이 뜹니다. 이름을 작성한 후 [새로 만들기]를 클릭합니다. 새로 만들어진 매크로 이름을 선택한 후 오른쪽에 [편집] 버튼을 클릭하시면 코드을 작성할수 있는 Visual Basic 소스 입력창이 열립니다.

엑셀(Excel) VBA - 웹브라우저(인터넷 익스플로러) 띄우는 방법

 

※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다.
엑셀 VBA 문서에 포함된 하이퍼링크 한번 삭제하기
엑셀 VBA 주민번호, 이메일 문자열 잘라 내는 방법
엑셀 Excel 쿼리 이용해서 실시간 주식 시세 조회로 수익률 계산하기
엑셀 Excel 페이지 정보 시트에서 실시간 자료 있도록 세팅하기
셀 VBA 개체, 속성, 함수, 이벤트 사용법과 사례 검색해서 참고하기

 

 

매크로 함수에 아래 함수를 복사해서 넣으시면 됩니다. 먼저 익스플로러 객체를 생성합니다. 생성한 익스플로러 객체는 각종 옵션설정이 가능합니다. 아래 설정된 값들은 브라우저가 이동할 페이지 주소 Navigate, 브라우저 크기 Height, Width 등이 설정되어 있습니다.

With ie
     .Visible = True
     .Navigate "http://mainia.tistory.com/2442"
     .Top = 50
     .Left = 530
     .Height = 1000
     .Width = 1000

 

  

그리고 페이지 로딩이 완료될때 가지 기다리는 소스가 필요합니다. 그것이 Do While ie.Busy 입니다. 이 소스가 없으면 로딩속도가 느린 웹페이지에 접속했을때 에러나겠죠.

' 로딩할때까지 대기
Do While ie.Busy
    DoEvents
Loop

 

 

마지막에는 브라우저에 접속한 페이지의 HTML 소스를 콘솔에 출력해 보았습니다.

Sub Internet_Click()
   
    Set ie = CreateObject("InternetExplorer.Application")
   
    With ie
         .Visible = True
         .Navigate "http://mainia.tistory.com/2442"
         .Top = 50
         .Left = 530
         .Height = 1000
         .Width = 1000
   
        ' 로딩할때까지 대기        Do While ie.Busy
            DoEvents
        Loop
 
    End With
 
    ' HTML 소스를 콘솔에 출력    Debug.Print ie.Document.body.innerHTML
   
End Sub

 

 

아래 그림은 매크로 버튼을 클릭했을때 브라우저를 띄운 모습입니다.

 

엑셀(Excel) VBA - 웹브라우저(인터넷 익스플로러) 띄우는 방법

※ 아래는 참고하면 좋을 만한 글들의 링크를 모아둔 것입니다.
엑셀 VBA 문서에 포함된 하이퍼링크 한번 삭제하기
엑셀 VBA 주민번호, 이메일 문자열 잘라 내는 방법
엑셀 Excel 쿼리 이용해서 실시간 주식 시세 조회로 수익률 계산하기
엑셀 Excel 페이지 정보 시트에서 실시간 자료 있도록 세팅하기
셀 VBA 개체, 속성, 함수, 이벤트 사용법과 사례 검색해서 참고하기
반응형
Posted by 녹두장군1
,