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

 참서리 (k5953)

추천:  2
파일:     급여_총계.xls (76KB) 조회:  1846
제목:   [RE]여러 시트의 목록을 1개 시트에 목록별 분류 & 합계
     
  소스 코드
사용자 정의 함수

'--------------------------------------------------
Function sum_salary(sEmp As String) As Variant
'--------------------------------------------------
    
    ' now함수처럼 수시로 자동 재계산
    Application.Volatile
    
    'Dim sEmp As String: sEmp = "홍길동"
    
    ' 결과를 담을 1차원 배열
    ' 급여,공제,실급여,지급,미지급
    Dim vTemplate As Variant: vTemplate = Array(0, 0, 0, 0, 0)
    Dim rngX As Range
    
    ' 각 시트를 돌며
    '----------------------------
    For i = 1 To 12
    '----------------------------
    
        ' 시트의 첫 열에서 찾기
        Set rngX = Worksheets(i & "월").Range("A:A").Find(sEmp)
        
        
        ' 찾는 값이 있다면
        '----------------------------
        If Not rngX Is Nothing Then
        '----------------------------
        
            '급여
            vTemplate(0) = vTemplate(0) + rngX.Offset(0, 13).Value
            
            '공제
            vTemplate(1) = vTemplate(1) + rngX.Offset(0, 23).Value
            
            ' 지급
            vTemplate(3) = vTemplate(3) + rngX.Offset(0, 1).Value
        
        
        '----------------------------
        End If
        '----------------------------
        
        
    '----------------------------
    Next i
    '----------------------------
    
    
    '실급여
    vTemplate(2) = vTemplate(0) - vTemplate(1)
    
    ' 미지급
    vTemplate(4) = vTemplate(2) - vTemplate(3)
    
    ' 배열을 반환
    '   배열을 반환하기 때문에
    '   배열의 크기만큼을 범위로 정한 후
    '   수식을 입력하고 Ctrl+Shift+Enter를
    '   입력해야 한다.
    sum_salary = vTemplate
    
    
End Function
 
[불량 게시물 신고]  
참서리다음 Youtube 채널에 오시면 
Excel, VBA, Google SpreadSheet, Google Apps Script 관련 다양한 자료가 있습니다.
https://www.youtube.com/user/5953kim
11-01 (19:40)
삭제 ■신고
        
  

작성일 : 2019-11-01(19:37)
최종수정일 : 2019-11-01(19:37)
 


 ◎ 관련글

  제 목   작성자   날짜
여러 시트의 목록을 1개 시트에 목록별 분류 & 합계 리베라 2019-10-30
[RE]여러 시트의 목록을 1개 시트에 목록별 분류 & 합계 참서리 2019-11-01
[RE]여러 시트의 목록을 1개 시트에 목록별 분류 & 합계 dew 2019-10-31