< link rel="shortcut icon" href="https://xn--oy2bi4yvoj.net/favicon.ico"> 비주얼베이직에서 엑셀함수 사용해 보기 > 프로그래밍 - 프로그래밍 자료실 | 프리존 - 게임정보 커뮤니티 
  • 북마크

프로그래밍 - 프로그래밍 자료실




[VisualBasic[비쥬얼베이직]] 비주얼베이직에서 엑셀함수 사용해 보기

굉장행
2020.07.18 13:25 442 1

본문

여기서 다루는 비주얼베이직은 닷넷이다. 6.0은 다루지 않는다.  이제 비주얼 베이직도 거의 완벽한

 

객체지향처럼  사용할 수 있으니 굳이 6.0을 사용할 필요가 없어졌다.

 

 Dim xl As New Microsoft.Office.Interop.Excel.Application

 

        Dim a(5) As Integer

        Dim b(5) As Integer

        a(0) = 5
        a(1) = 10
        a(2) = 20
        a(3) = 30
        a(4) = 40

        b(0) = 2
        b(1) = 2
        b(2) = 1
        b(3) = 1
        b(4) = 1

        Me.TextBox1.Text = xl.WorksheetFunction.Average(a, b)

 

 

코드를 한번 만들어 보았다.  엑셀 함수를 사용하는 법은 간단하다.  위의 것 처럼 엑셀어플리케이션을

 

객체화 시켜서 사용하면 엑셀의 함수를 사용할 수 있으니 매우 편리하다.

 

여기서 말하고자 하는것은 바로 이렇게 함수를 사용할 때 주의할 점이 있다. 

 

위의 예제에서 a , b 의 배열의 평균을 구하는 것인데 엑셀에서는 range범위를 정해주고 간단히

 

실행하면 된다.  하지만 여기서 주의할 것은 비베에서는 저 배열의 크기를 정의할때 반드시 주의해야

 

한다.  배열의 크기가 실제 들어가는 크기와 차이가 있다면 구하고자 하는 함수의 값이 다르게 나온다.

 

실제 배열의 크기가 5이면 크기를 정의할때 5로 잡아야 한다. 

 

아니면 Ubound 로서 크기를 정하든가 redim 을 해서 재정의를 해주어야 한다.

 

위의 예제에서는 배열의 크기를 다르게 해 보았다.  실제 엑셀에다가 저 값을 넣고 평균을 구해보면

 

서로 값이 다르다는 것을 알 수 있을것이다.

댓글목록 1

hq27676996님의 댓글

회원사진
hq27676996 2021.07.29 08:06

nice job~thanks!!