[엑셀] RANK 함수
RANK 함수 RANK 함수는 회사에서는 별로 쓸일이 없다. 그래도 막상 쓸 일이 생길 수 있으니, 아래처럼 등수를 매길 일이 있다고 치자. RANK함수는 총 3개이며, 순위를 환산할 숫자, 전체 배열, 그리고, 내림차순/오름차순 옵션이다. 매우 간단하다. 등수를 기재할 셀 위에서 등수를 산출할 숫자 또는 셀주소를 입력하고, 참조 영역을 넣는다. 그리고, 오름차순/내림차순 옵션을 설정한다. 0번이 내림차순이고, 입력 안하면 내림차순으로 된다. 전체 등수를 산출해야하므로 참조 영역은 절대참조로 하고, 자동입력을 하면 등수가 매겨진다. 글로쓰니 길어졌는데, 매우 쉬운 작업. 참조영역 절대참조만 잊지 말자
[엑셀] Vlookup 함수
회사에서 가장 많이 쓰는 함수다운 함수 Vlookup 회사에서 가장 많이 쓰는 함수가 뭘까.. 아무래도 sum을 제외한다면, 함수라 불리우는 것중에는 아무래도 Vlookup 이 아닐까 한다 아래 그림처럼 데이터 테이블이 있고, 찾고자 하는 기준이 있다면, 그 값을 찾아, 원하는 열의 값을 반환해주는 함수이다. 말로하면 어렵게 느껴지니 한번 보면,, 표 중에서 사과의 가격을 찾고 싶다고 하자. (값이 가로로 배치 되어 있으니, Vlookup(vertical)을 쓰고, 세로로 배치되어 있다면 Hlookup(horizontal)을 쓴다.) 찾을값이 들어갈 셀에서 =Vlookup을 쳐보자 인수들이 나온다. 인수는 총 4개로, 아래와 같이 구성된다. Lookup_value -> 찾을값(셀을 지정하거나, 값을 그냥..
[엑셀VBA] 시트 추가하기
시트 추가하기 시트추가하기같은 하찮은걸 원했다기 보다는 시트를 추가했을 때, '첫번째 시트'가 바뀌게 되는데, 순서와 갯수를 컨트롤하는 것을 알아보고자 했다. 추가하는 건 덤으로 알게됐으니...;;; [코드샘플] Sub sheets_add() Dim addNUM As Integer On Error Resume Next Application.DisplayAlerts = False addNUM = Application.InputBox("시트를 몇장 추가하시겠습니까?", , , , , , , 2) Application.DisplayAlerts = True If MsgBox("시트를 " & addNUM & "장 추가하시겠습니까?", vbYesNo) = vbYes Then Worksheets.Add before:..
[엑셀VBA] 날짜데이터 월별 합계
날짜데이터 월별 합계 아래와 같이 조건이 있다고 하자. _오늘날짜 또는 특정 기준일이 있다 _여러날짜들 중 특정 기준일의 월과 매칭하여, 이에 맞는 값을 합산한다 함수로 하면 별거 아닐 수 있겠지만, VBA로는 어떨까, 정답은 모르겠다. 나는 날짜변수를 전부 싸그리 그달의 1일로 바꾸고 값이 같을 경우 합산하도록 했다. [코드예시] Sub monthly_() Dim j As Integer Range("b4").ClearContents For j = 2 To Cells(2, 4).End(xlDown).Row If Cells(2, 2) - Day(Cells(2, 2)) + 1 = Cells(j, 4) - Day(Cells(j, 4)) + 1 Then Cells(4, 2) = Cells(4, 2) + Cell..
[엑셀VBA] 텍스트 코드(LEN/LEFT)
텍스트 코드(LEN/LEFT) 텍스트를 정렬하고 짜르고 붙이는 건 노가다가 빠른지 코드를 짜놓는게 좋은지 판단이 서지 않을 때가 많다. 문득, 문장중 한 단어를 고르면, 그 단어 뒤만 남게 되는 코드를 짜보고 싶었다. 실용성은 0%가 되겠지만, 해보면 그 쓰임새는 잘 알게 될지 모른다. 생각나는데로 하다보니 변수선언도 없고, IF가 많다. 귀찮아서 대부분 GOTO로 처리했다. 왜냐면,, 다른 방법을 모르니까. [적용화면] [코드샘플] Sub kk() ActiveSheet.Cells(1, 1) = "this is a practice" a = Range("a1") ff = Array("t", "h", "i", "s", "p", "r", "c", "e") dd: myword = InputBox("원하는 문자 ..