분류 전체보기(115)
-
[엑셀 VBA] Function (Optional 키워드) 생략 가능한 인수를 사용하는 사용자 정의 함수
Function 프로시저를 이용해 사용자 정의 함수를 만들 때, Function 프로시저 안에 [Optional]이라는 키워드를 사용하면 생략 가능한 인수를 사용 가능하다. 위 코드를 보면 [총액]이라는 사용자 정의 함수에서 두 번째 [부가세]를 따로 입력하지 않았을 때, 기본 인수로 [별도] 가 들어가게 짜 놓은 코드이다. 예시를 보자 총액 사용자 정의 함수를 사용하여 부가세 방식을 활용하여 자동으로 총액이 나오게 만든 코드이다. [장비3]을 보면 부가세 방식이 빈칸이어서 [총액] 사용자 정의 함수를 다 사용하면 [장비3]에는 기본 인자가 들어가게 된다. 나는 코드에서 기본인자가 "별도"가 되도록 했기 때문에 [장비3]의 총액은 22000원이 되어야 할 것이다. 실행해 보면? 위와 같이 [장비3]의 총..
2019.12.15 -
[엑셀2016] 워터마크 넣기, (EXCEL2016 Water Mark)
몇 시간에 걸쳐 만든 내 엑셀 DATA 또는 내 엑셀 VBA. 옆 부서 김대리가 마음대로 갖다 쓰는데 동료나 상사는 그 자료가 김대리의 DATA 인지 안다?! 이때처럼 열 받는 경우는 없다. 내 엑셀에 워터막크를 넣는 방법을 알아보자 (초간단) 자 준비물은 워터마크로 쓸 이미지를 준비하면 된다. 이미지가 없다고? 어려워하지 말고 파워포인트로 들어가서 간단하게 하나 만들면 된다. 한가운데 적당한 워터마크로 쓸 글자 적어주고 색일 입혀준 뒤 캡처해서 저장하면 된다. 자 이제 엑셀에 들어가보자 [삽입] - [머리글/바닥글]을 선택한다 이후 아래와 같은 창이 뜨면 [그림]을 눌러 워터마크로 쓸 이미지를 선택해주자 선택해주고 아무 CELL이나 누르면 다음과 같은 결과 값을 얻는다. 워터마크로 쓰기에는 너무 글씨가..
2019.12.08 -
[엑셀 VBA] FOR~NEXT문(순환문) 사용법
For ~ NEXT 순환문은 엑셀 VBA 사용에 있어 가장 빈번하고 가장 쉽게 사용되는 순환문 구조이다. 대부분 순차적으로 CELL이나 RANGE 값을 실행할 때 사용하며 기본 형식은 위 코드 과 같다. 1. 카운터로 사용할 문자를 선언해준다. 대부분 i 또는 j를 사용하며 DATA 형식은 Integer 또는 Long을 사용한다. 2. "FOR i = 시작숫자 TO 끝숫자"를 지정해준다. 3. 각 i값에 실행 될 명령 코드를 작성한다. 4. NEXT 즉 다음 i 값으로 넘어간다. FOR 순환문을 사용한 예시를 하나 들어보자, 예시는 판매하고자 하는 어떤 항목의 수량이 "0"개 일때, 그 옆 Column에 "품절"을 표시하는 매크로이다. 위 코드를 실행 해주면 수량이 0인 항목의 "품절여부" Column에..
2019.12.03 -
[엑셀 VBA] PasteSpecial. 선택하여 붙여넣기
엑셀에서 자주 쓰는 기능 중 하나는, [선택하여 붙여 넣기]이다. [선택하여 붙여 넣기 [는 원하는 DATA를 행, 열 전환하여 붙여 넣거나, 수식을 제외하고 값만 붙여 넣을 때. 또는 원하는 DATA를 한 번에 나누거나, 곱할 때 유용하게 쓰이는 엑셀 기능이다. 그렇다면 VBA 코드에서 이 [선택하여 붙여 넣기]는 어떻게 작성해야 할까. VBA에는 PasteSpecil이라는 메서드로 사용되며 구문은 아래와 같다. 위와 같이 붙여넣기 원하는 Range와. PasteSpecial만 입력하면 도움말이 나오면서 내가 쓸 수 있는 항목을 list화 해준다. 항목을 간단하게 설명하기 위해, 엑셀에서 [선택하여 붙여 넣기] 기능을 살펴보자 빨간 화살표가 있는 곳이 바로 PasteSpecial 구문의 항목으로 순서대..
2019.11.28 -
[엑셀 VBA] InputBox 사용법. (InputBox 매서드)
Inputbox는 총 두가지로 사용할 수 있다. ① Inputbox 함수 ② Applcation.Inputbox ------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------- 코드창에서 두가지를 쳐보면 다음과 같이 구문 예시가 나온다. 차이는 입력된 값을 반환하는 방법이다. (1)Inputbox 함수의 경우 구문을 보면 "As String" 으로 되어있는 것을 볼 수 있다. 즉 입력값을 String형식으로 반환한다는 말이..
2019.11.27 -
[엑셀 VBA] On Error문을 이용한 코드 최적화 법
On Error문을 순환문 대신 사용하여 작업을 능률적으로 할 수 있다. 방식은 간단하다. 예를 들어보면 우선 For Each In 문을 사용한 순환문을 통해, 현재 파일이 열려 있는지 확인하는 코드를 작성해보자. 위와 같이 작성할 수 있는데, 이렇게 순환문을 사용하면 원하는 파일명을 확인하기 까지현재 열려 있는 모든 문서를 일일이 확인해야 하는 번거로움이 생긴다. (나 말고 메모리에) 그렇다면 순환문을 작성하지 않고, On Error문을 통해 어떻게 열려 있는 파일을 확인할 수 있는 코드를 짤 수 있을까? 코드를 설명해보면 먼저 [On Error Resume Next]구문, 이전 포스팅에서 설명한 구문으로 Error가 발생해도 무시하고 다음 구문으로 넘어가라고 지시하는 구문이다. 그 후 순환문을 쓰지 ..
2019.11.21