반응형

VBA 27

VBA로 ColorIndex에 대한 색 표시하기

VBA는 Visual Basic for Application의 약자로, 엑셀, 워드, 파워포인트 등 응용프로그램을 위한 비주얼 베이직이란 의미로, 비주얼 베이직을 이용해서 응용프로그램을 쉽고, 빠르게 사용하는 것입니다. 개발 도구 탭에서 Visual Basic을 누르고, 비주얼 베이직 에디터에서 삽입 - 모듈을 눌러 Module1을 삽입을 누르면 아래와 같이 왼쪽 통합 문서에 Module1이 추가되고, 오른쪽에는 빈 코드 창이 열립니다. 이때 코드 창에 아래 코드를 복사해서 붙여 넣고, Sub 색표시() Dim i As Integer For i = 1 To 128 Range("a" & i) = i Range("b" & i).Interior.ColorIndex = i Next End Sub F5키 또는 세..

EXCEL - VBA 2024.04.12

한글이 아닌 엑셀로 하는 메일 머지(3)

문제는 여기를 참고 바랍니다. 3. 해법 2 : 이름뿐만 아니라 나머지 내용까지 매크로로 처리하는 방법 가. 논리이번에는 셀 값을 Vlookup함수가 아니라 다른 시트의 셀 주소로 연결하는 방법과 같은 연번에서 이름이 반복될 경우 고지서에 한꺼번에 인쇄하는 매크로를 만들어 보겠습니다. (1) 셀 값을 다른 시트의 셀 주소로 연결하기 예를 들어 고지서 시트의 회사명(성명)인 D6셀에는 명단 시트의 E열의 값이 입력되어야 합니다. 이 때는 연결키가 없어도 됩니다.그리고, 토지 소재지인 시군, 읍면, 리동은 명단 시트의 G, H, i 열과 연결되면 됩니다. (2) 같은 연번에서 이름이 반복될 경우 인쇄하기 "같은 연번"이란 병합된 셀로서 처리 줄과 윗 줄의 A1셀이 동일한 경우이고, "이름이 반복된다"는 것은..

EXCEL - VBA 2024.03.29

ChatGPT를 이용해서 VBA 코드 짜기(2)

1편은 여기를 클릭하면 됩니다. (3) 텍스트 파일에 특정 단어를 연결해서 표시하는 VBA 코드 검색 "텍스트 파일에 특정 단어를 연결해서 표시하는 VBA 코드"라고 했더니 아래와 같이 결과가 나왔는데, 줄별로 연결하는 부분이 빠져 있습니다. 이 때는 당신이라고 표시된 아래의 대화 내용에 커서를 갖다 대면 없던 연필이 표시되므로 연필을 클릭합니다. 그리고, 아래와 같이 " 텍스트 파일에 특정 단어를 줄별로 연결하는 VBA 코드"라고 수정한 후 '저장 및 제출' 버튼을 누릅니다. 그러면 줄별로 단어를 연결하는 코드만 보여줘야 하는데, 어제 학습을 해서 그런건지, 아니면 이전 질문과 연결해서 답을 만든 것인지 폴더를 선택할 수 있는 창을 여는 코드와 특정 단어를 연결하는 코드가 함께 결과로 나옵니다. Cop..

EXCEL - VBA 2024.03.21

ChatGPT를 이용해서 VBA 코드 짜기(1)

1. 문제 텍스트 파일이 여러 개 있는데, 기존 내용에 텍스트 파일명에서 네 번째부터 10번째까지의 텍스트를 왼쪽에 추가한 후 모든 텍스트 파일을 연결해서 하나의 파일로 만들려고 합니다. 텍스트 파일은 2개만 해보겠습니다. 2. 해결 순서 ① 적용 순서는 폴더를 선택하고, ② 폴더 내 텍스트 파일을 열어서 파일명의 네 번째부터 10번째까지의 텍스트를 발췌한 후 줄 별로 왼쪽에 추가합니다. ③ 텍스트 파일을 붙여서 하나의 파일로 만듭니다. 3. ChatGPT 로그인 또는 가입하기 ChatGTP 사이트( https://chat.openai.com/ )를 연 후 로그인을 합니다. 만약 가입이 안되어 있다면 가입하기 버튼을 누르고, 계정 만들기 창에서 여러 가지 방법 중 원하는 것을 선택합니다. 아래 Googl..

EXCEL - VBA 2024.03.20

While 문 - VB와 VBA의 차이점

VBA는 엑셀 등 오피스 앱을 위한 VB이지만(Visual Basic for Application), VB가 모두 적용되는 것은 아닙니다. 1. VB와 VBA의 While문 차이점가. VB의 While문구글에서 vba while로 검색을 하면 VB에 대한 도움말만 나오고, 들어가 보면 While 반복문의 구문은 아래와 같습니다.While condition [ statements ] [ Continue While ] [ statements ] [ Exit While ] [ statements ] End While Continue While 문도 있고, Exit While로 중간에 빠질 수 있습니다. condition은 조건이고, statements는 실행문입니다. Exit While 다음의 statemen..

EXCEL - VBA 2023.12.17

VBA에서 SumProduct 사용하기

1. SumProduct 함수 SumProduct 함수는 Product, 다시 말해 곱한 값을 더해서 반환해 주는 함수입니다. 가. Product와 Sum함수를 이용하는 경우 아래와 같이 숫자1과 숫자2를 곱한 다음 합계를 낸다고 할 때 Product와 Sum 함수만 알고 있다면 먼저 줄별로 Product, 예를 들어 =product(a2:b2)를 한 후 C7셀에서 Sum을 하면 됩니다. 나. SumProduct 함수를 사용하는 경우 (1) 구문 =SUMPRODUCT(array1, [array2], [array3], ...) 배열로 되어 있는데 범위라고 생각하면 간단합니다. (2) 사용 예 배열을 세로로 해서 A열을 배열1, B열을 배열2로 지정하면 됩니다. 따라서, 위와 같이 곱한 것의 합을 구하려면 ..

EXCEL - VBA 2023.11.30

엑셀 VBA에서의 주석 처리

1. 주석의 기능 주석이란 프로그램에 대한 설명을 추가하는 기능과 프로그램을 디버깅하는 동안 코드를 실행에서 제외시키는 기능을 합니다. 2. 주석 처리 기호 모든 프로그래밍 언어는 주석 기능을 가지고 있는데, 언어별로 주석 처리 기호가 다르며, 한 줄 주석과 여러 줄 주석을 처리하는 방법이 다르기도 합니다. 자바를 예로 들면 한 줄 주석 처리는 //로 처리하고, 여러 줄 주석 처리는 /*로 시작해서 */로 끝납니다. 엑셀 VBA에서는 한 줄이나 여러 줄이나 주석 처리할 때 항상 작은따옴표(')를 사용합니다. 3. '주석 블록 설정' 구성 방법 주석 블록 설정을 편리하게 할 수 있도록 주석 블록 설정과 해제 아이콘이 들어 있는 편집 도구 모음을 표준 도구 모음 아래에 배치할 수도 있고, 컨텍스트(바로 가기..

EXCEL - VBA 2023.08.03

여러 가지 조건을 만족하는 값을 찾을 때(2-1) - 사용자 정의 함수(1)

XLookup함수가 뛰어나기는 하지만 Excel 2021 버전이상에서만 사용할 수 있기 때문에 사용자 정의 함수를 만들어 사용하려고 합니다. 만들면서 한 열만 지정하는 경우는 범위로 되고, 열을 &연산자로 연결하면 배열로 돼서 이를 해결하느라 고생 좀 했습니다. 사용자 정의 함수는 추가기능 파일, 확장자 xla(m) 파일에 모아 놓고 사용하는 것이 좋습니다. 그렇지만 설명이므로 모듈에 만드는 것을 기준으로 설명하겠습니다. 1. VBA 에디터 실행 및 모듈 삽입 개발도구 탭이 없다면 파일 - 옵션에서 Excel 옵션 창을 연 후 리본 사용자 지정 메뉴를 선택하고, 개발도구 왼쪽에 체크해야 합니다. 개발 도구 탭을 누른 후 Visual Basic 명령을 눌러 Visual Basic 에디터를 엽니다. 그리고,..

EXCEL - VBA 2023.07.25

날짜간의 차이 계산(4) - VBA DateDiff 함수

워크시트에서는 날짜 차이를 계산하는 함수명이 DateDif인데, VBA에서는 DateDiff로 다릅니다. 1. 구문 DateDiff(interval, date1, date2, [ firstdayofweek, [ firstweekofyear ]] ) o interval(간격)의 유형 Setting Description yyyy Year (연) q Quarter (분기) m Month (월) y Day of year (몇번째 날) d Day (일) w Weekday (같은 요일에 해당하는 주의 수) ww Week (firstdayofweek 설정에 따라 일요일인 경우는 일요일부터 일요일까지의 주의 수) h Hour (시) n Minute (분) s Second (초) - w와 ww의 차이점 간격이 요일(we..

EXCEL - VBA 2023.04.10

엑셀 VBA - XML Parsing(XML 6.0 기준) (1)

1. XML 문서 형식 위 파일의 내용은 아래와 같습니다. [https://learn.microsoft.com/en-us/dotnet/standard/data/xml/xml-document-object-model-dom 참고] Carson 31.95 05/01/2001 MSPress WA [XML document structure] 위 그림의 각 원은 XmlNode 개체라고 하는 노드를 나타냅니다. XmlNode 개체는 DOM 트리에서 기본 개체입니다. XmlNode를 확장한 XmlDocument 클래스는 XML을 메모리에 로드하거나 파일로 저장하는 것처럼 문서 전체에 수행되는 메서드를 지원합니다. 노드에는 하나의 부모 노드(parent node)가 있습니다. 부모 노드는 해당 노드의 바로 위에 있는 노..

EXCEL - VBA 2023.02.08
반응형