엑셀 20

[엑셀] 같은 내용인 경우에 셀 병합하는 매크로

매크로 설명 특정 열에서 같은 내용이 반복적으로 나타나는 경우 해당 셀들을 병합하는 매크로이다. 데이터 활용에 있어서 셀 병합을 선호하지 않지만, 정리를 위해서 가끔식 필요한 매크로이다. 대략적으로 만들어서 빈 셀 처리 등은 문제가 발생할 수 있다. (매크로를 실행하기 전 시트를 백업해두자.) 사용 조건: 예시 동영상과 같이 빈 셀이 없어야 한다. 빈 셀이 없도록 데이터를 예쁘게 만져놓아야 한다. 매크로 실행 동영상 VBA Code Option Explicit Sub mergeCells() Dim i As Long Dim marker As Long Dim lastRow As Long Dim mergeCol As Long Application.DisplayAlerts = False '병합시 발생하는 대화창..

VBA Macro/VBA Excel 2017.12.19

[엑셀] 빈 행, 빈셀 삭제하기 매크로

매크로 설명 첫 번째 시트 "A"열의 빈셀 또는 빈셀이 있는 행 전체를 삭제하는 매크로 이 방법 외에도 SpecialCells 메서드로 빈행을 찾아서 없앨 수 있다. (방법은 많다.) 많은 데이터가 아니거나 손이 많이 가지 않는다면, 자동필터를 이용해서 빈 필드는 제외하고 따로 복사하는 방법을 추천한다. VBA Code 예시 Option Explicit Sub empt_row_del() Dim i As Long Dim lastRow As Long Dim targetCol As String Dim mySheet As Worksheet Set mySheet = Sheets(1) 'mySheet를 첫 번째 시트로 설정, 다른 시트가 필요하다면 변경 With mySheet.UsedRange lastRow = ...

VBA Macro/VBA Excel 2017.11.14

[엑셀] 메모장 데이터 불러오기 매크로

메모장의 데이터를 Line by Line으로 변수에 넣는 매크로.이 경우 엑셀파일과 메모장 파일이 같은 폴더 내에 있어야 한다.다른 경우에는 참조할 수 있도록 myPath를 지정해주어야 하고. VBA Code Option Base 1 Option Explicit Dim textLine As String Dim myText() As Variant Dim myPath As String, fileName As String Dim file_number As Long, cnt As Long Sub xml_() myPath = ThisWorkbook.Path & "\" 'myPath 변수에 현재 엑셀파일의 위치 및 역슬래시 입력 fileName = "HRD_API.txt" file_number = FreeFile ..

VBA Macro/VBA Excel 2017.11.07

[엑셀/파워포인트] 지식의 보고, VBA 도움말 및 가이드 (파일)

## VBA2010 Guide VBA에 관한 매뉴얼이다. 게다가 한글화되어 있다. 상수, 날짜 형식, 지시문, 이벤트, 함수, 그룹, 키워드, 메서드, 개체, 연산자, 속성, 문 필요한 VBA 지식의 '운'을 띄울 수 있는 가장 강력한 교재라고 생각한다. ## Excel/PowerPoint 2013 Developer Documentation 엑셀과 파워포인트 2013의 개체모델, 간략한 코드 예제를 제공한다. 별도의 강의서적이 필요없을 정도로 풍부하다. (MS가 설치된 환경이라면 chm 파일을 검색하는 것만으로도 쉽게 구할 수 있다.) 정보제공 차원에서.. VBA Guide.chm 실행 화면

VBA Macro/VBA Excel 2017.10.27

[엑셀] 자주 사용하는/유용한 VBA 코드 정리

## 자주 사용하는 VBA 코드 정리 VBA Code Sub useful_code() last_cell_num = Sheets("Sheet1").Cells(Rows.Count, "A").End(xlUp).Row '마지막 셀의 행번호 찾기 'A 열 중간에 행이 비어 있어도 가장 마지막 행번호를 찾는다. '워크시트의 A 열 가장 아래쪽 끝에서 Ctrl + ↑를 한 것과 동일하다. Set myRng = Sheets("Sheet1").Cells(1,"A").CurrentRegion 'myRng를 A1 셀과 인접한 비어있지 않은 모든 셀의 Range 객체로 반환한다. 'A1 셀에서 Ctrl + A를 실행한 것과 동일하다. Dim OneArray(10) Dim MyArray(1 To 10, 5 To 15, 10 T..

VBA Macro 2017.10.27

[엑셀] 웹 페이지 크롤링/스크래퍼 매크로

## 웹 페이지 크롤링(실험)회사 업무중에 웹 페이지를 크롤링 해야 할 일이 생겨서 찾아보던 중자바나 다른 언어는 할 줄 모르기 때문에 현재 내가 할 수 있는 가장 쉬운 방식을 찾았다.구글 스프레드시트 importxml 함수를 통힌 파싱도 쉬워(노가다)보이는데 웹페이지에 따라서 제약이 좀 있는 듯하다. ※ "동일한 형식의 데이터를 보여줄 동일한 웹페이지를 URL 형식으로 모두 인덱싱 할 수 있어야 한다."는 점이 중요해 보인다.무슨 소리나면, 요새 웹페이지들이 http://도메인 이후 파라미터를 숨겨놓은 데가 많은데,그래서 페이지 인덱스가 바뀌어도 URL은 그대로라서 URL by URL 방식의 크롤링이 (마치 안되는 것처럼) 보인다.그런데 거꾸로, 페이지 인덱스만 찾아준다면 아래의 VBA 코드를 이용해서..

VBA Macro/VBA Excel 2017.10.21

[MS 일반] 와일드 카드

와일드 카드(Wild Card)란? 와일드 카드는 속성을 지니지 않은 (임의) 대체자를 의미한다. (본인 생각임)'깎두기'라고도 칭할 수 있겠고, 좀 더 있어보이게 말하자면 조커(Joker)이다.카드 게임에서 조커의 쓰임새를 보면 알 수 있듯이, 조커는 속성(숫자, 모양)을 지니지 않은 상태에서 내가 원하는 무엇인가를 대체할 수 있다.디지털 기반의 환경에서 와일드 카드는 의외로 자주 그리고 유용하게 활용되는 경우가 많다. 어디서 쓰이고 있나? 1. 운영체제에서의 검색 윈도우 탐색기를 실행해서 F3을 눌러보자. 검색창이 뜨면, 거기서 *.JPEG를 쳐보자. 파일 이름이 무었이든 간에 확장자가 JPEG인 파일을 모두 검색한다. 별표(*)가 와일드 카드이다. "모든"이라는 말로 대체하면 이해하기 쉽다. 2. ..

MS Office 일반 2017.10.20

[MS 일반] 개체모델

개체모델(Object Model)이란? 개체모델(Object Model)은 특정 개체의 모든 구성 요소를 구분하고 분류하기 위한 일종의 틀이다. 하나의 건물을 개체모델의 예로 들어보자.여기 관악구청이 있다. 관악구청은 여러 개의 부서로 나눠질 것이고,각 부서마다 팀이 있고 각 팀마다 책상, 의자, 컴퓨터, 사람 등 무수한 개체가 있을 것이다.누구든지 관악구청의 서무과의 경리팀에 있는 의자에 앉으려면 관악구청 > 서무과 > 경리팀 > 의자 순서로 접근해야 한다. 이를 VBA의 개체모델 접근 방식으로 바꾸면,관악구청.과(서무).팀(경리).의자(1) 과 같은 형식이 된다. MS Office의 개체 모델은 작성자가 이해하는 한 이와 같은 방식으로 작동된다. 파워포인트의 특정 개체에 접근하는 코드를 살펴보자.Ac..

MS Office 일반 2017.10.18

[검색] FIND 함수

구문 =FIND(find_text, within_text, [start_num]) within_text 내에서 [start_num]번째 지점에서 오른쪽으로 검색하여 find-text가 within_text의 몇 번째에 위치하는지 반환 find_text 찾는 문자(열)within_text 찾는 문자(열)를 포함하는 텍스트[start_num] 검색을 시작하는 문자열 번호 예시 A B CD 1 첩첩 바위사이를 =FIND(" ", A1) 3 2 A2017_홍길동_891103_1****** =FIND("_", A2) 6 3A2017_홍길동_891103_1******=FIND("_", A2, 7)10 4 5 A27_홍길동_891103_1******=FIND("_", A5, FIND("_", A5)+1)8 6 A21..

MS Office 일반 2017.10.08