업무 스킬(72)
-
[Excel VBA] Function 프로시저, 사용자 정의 함수
프로시저에는 Sub 뿐만 아니라 Function 프로시저를 이용하여 사용자 정의 함수를 만들 수 있다. 위 코드는 은행의 복리 예금을 계산할 수 있는 사용자 정의 함수를 만드는 코드이다. Function 프로시저를 사용할 때에는, 아래와 같은 형식으로 시작해야 한다. Function 함수명(매개변수1 as 데이터 형식, 매개변수 2 as 데이터 형식. ---) as 데이터 형식 맨 위에 내가 작성한 코드를 간단하게 설명하면, [은행복리예금]이라는 사용자 정의 함수를 만들 건데 코드 본문에 보면 [은행이자]가 0.032로 소수점 자리이기 때문에, 내가 구하고자 하는 은행 복리 예금 또한 소수점 자리로 나올 수 있다 때문에, [은행복리예금]의 데이터 형식을 [은행이자]와 동일하게 [Single]로 선언한다...
2019.11.14 -
[Excel VBA] 이중 For문을 사용하여 원하는 값 찾기
자 위 표에서 1,200이란 숫자를 찾는 For 문을 짜 보자 For문은 숫자 변수를 기본으로 사용하기 때문에, For문을 짜기 전 미리 숫자 변수를 선언하자 위 표에서는 행과 열 두 개의 변수를 사용해서 찾아야 하므로 두 가지 숫자 변수를 선언하자 변수 선언할 때는, 나중에 알아볼 수 있게 약자를 쓰는 것을 추천한다. 여기서 r은 Row, c는 Column의 약자이다. 여기서 우리는 1월부터 검색을 시작해야 하니, 이중 For문 중, Column의 For문을 미리 쓰고 이후에 Row의 For문을 써줘야 Row가 먼저 검색되고 그 후에 Column이 검색되게 할 수 있다. 코드를 설명하면, Cells(Row, Column)을 사용하여, 첫 번째 For문에 Column을 3부터 14까지로 정하고 두 번째 ..
2019.11.11 -
[Excel VBA] AddChart2 , 엑셀 2016 새로운 기능
엑셀 2016버전에서 새롭게 차트 형식이 추가 되었다 종류는 아래와 같다. 위 코드의 예시는 아래와 같은데 코드를 간단하게 설명 하면, Range("B2").Select를 하면서 그 근처 영역을 다 잡아주는(CurrentRegion) 효과를 내고 그다음에 AddChart2 구문을 통해 Chart를 생성 한다. 엑셀 2016에서 추가된 차트를 사용하려면 AddChart2구문을 사용한후 Style와 xlChartType을 정해주도록 한다 Style:= -1은 기본 스타일을 뜻하며 xlChartType은 사용하고픈 Type을 쓰도록 한다.
2019.11.07 -
[Excel VBA] AddChart , 차트 삽입하기
Chart를 삽입하는 코드는 위가 가장 기본 코드 이다. 엑셀 2007부터 차트가 도형 항목으로 생성되므로 AddChart는 Shapes 구문뒤에 와야 한다. 코드를 간단하게 설명하면, 차트생성 → 차트를 구성할 DATA 선택 → Chart 구성 변경. 과 같이 총 3가지로 나눠서 작성한다. 차트 구성 DATA나 Chart 구성이나 기본 옵션들을 변경하려면 매번 ActiveChart를 써주기 번거로우니 With문을 써주도록 하자. 차트 구성에 관해서는 위와 같이 Excel에서 기본 옵션 LIST를 자동으로 뜨게 만들어 놨으니 입맛에 맞게 선택하면 된다. *참고: 코드 중 [Cells(1,1).CurrentRegion]은 첫번째 Cell과 연결된 모든 Range를 뜻한다. 위와 같이 코드를 짜면 아래와 같..
2019.11.07 -
[Excel VBA] Goto문 사용하여 VBA 암호 만들기
VBA에서 종종 GoTo 문을 쓰일 때는, 대부분 내가 원하지 않는 조건에서 아예 다른 코드로 이동시킬 때 쓰이곤 한다. 자주 쓰이는 건 아니고, 갑자기 생각도 못한 조건이 들어왔을 때, 코드를 아예 뒤엎지 않고 샛길로 보내서 독립된 코드로 사용 할 수 있게 하는 구문이니 알아두면 좋다. 이번에는 간단한 예시로 Goto문의 사용하여 VBA 암호를 만들어보자. 이후에 알아볼 순환문에서도 사용가능하지만 Goto문은 매우 직관적이기 때문에 아래와 같이 짧은 순환문에 사용해도 좋은 구문이다. 위와 같이 쓸 경우 내 매크로를 누군가 마음대로 쓸 경우 암호가 맞을 때까지 암호 입력 창이 뜬다. 취소도 불가능하다. 내 매크로를 누군가 마음대로 쓰는게 싫을 때 사용하면 종종 써먹을만하다 ㅎㅎ 물론 고수들한테는 애들 장..
2019.11.05 -
[Excel VBA] Private, Public문 사용 변수의 범위 늘리기
음.. 간단한 코드를 짤 때에는 거의 쓸 일이 없지만 온갖 변수가 난무하고, 변수를 또 끌어다 써야 하고 이런 복잡한 코드를 짤 경우, 정말 많이 쓰게 되는 구문이다. 간단하게 말하면 Private : 같은 Module내에서 사용 가능한 공통된 변수 선언 Public : 다른 Module에서도 사용 가능한 공통된 변수 선언 으로 생각하면 된다. 예를 들어보면 아래와 같이 코드를 짜고 [F5] 실행을 누르면 당연히 잘 작동한다 그렇다면 아래와 같이 변수를 뺴먹으면 당연히 오류가 날 것이다. 하지만 Private 구문을 써서, Module내에 공통으로 사용 가능한 변수로 선언을 해주면? 잘 작동이 된다. Public을 자주 쓰진 않고, Private는 모듈 내에 여러 가지 프로시저가 들어갈 때 프로시저마다 ..
2019.11.04