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

 참서리 (k5953)

추천:  2
파일:     중간_합계_구하기.xls (26.5KB) 조회:  1568
제목:   [VBA,UDF]중간 합계 구하기
     
  '---------------------------------------------
Function get_sum(rX As Range) As Variant
'---------------------------------------------
    
    ' 수시로 재계산, now, rand함수 같이
    Application.Volatile
    
    ' 여기서 Application.Caller는 현재 수식이 있는 셀을 반환한다.(젤 중요)
    '  현재 수식 입력 셀 바로 왼쪽 셀 값이 '합계'가 아니면
    If Application.Caller.Offset(0, -1).Value <> "합계" Then
        ' 빈 문자열을 반환하고 빠져나가기
        get_sum = "": Exit Function
    End If
    
    ' 합계할 변수
    Dim iSum As Variant: iSum = 0
    Dim v As Variant
    
    ' 범위의 각 셀을 끝에서 부터 처음으로 돌며
    '--------------------------------------
    For r = rX.Cells.Count To 1 Step -1
    '--------------------------------------
        
        ' 셀의 값
        v = rX.Cells(r).Value
        ' 숫자가 아니면 FOR문 빠져 나가기
        If Not IsNumeric(v) Then Exit For
        ' iSum에 합치기
        iSum = iSum + v
    
    '--------------------------------------
    Next r
    '--------------------------------------
    
    
    ' 함수의 결과 값으로 iSum 반환
    get_sum = iSum
    
    
'----------------------------------
End Function
'----------------------------------
 
[불량 게시물 신고]  
        
  

작성일 : 2019-11-07(23:44)
최종수정일 : 2019-11-07(23:44)
 


 ◎ 관련글

  제 목   작성자   날짜
질문요(합계) 엑설러 2019-11-07
[VBA,UDF]중간 합계 구하기 참서리 2019-11-07