thumbnail [엑셀VBA] 숫자 데이터 공백 지우기(앞/뒤/가운데 전부) 숫자 데이터 공백 지우기(앞/뒤/가운데 전부)DB를 엑셀로 변환하거나 아웃룩, 파워포인트, 웹에서 데이터를 드래그 하다보면,숫자 데이터 사이에 공백이 생겨, 텍스트로 인식되는 경우가 있다. 아무리 데이터양이 적어도 일일이 다 지우기에 엄청 짜증난다.이번에도 시덥잖은 코드로 해결해보고자 한다.  ** 당연히 바꾸기(컨트롤 H)로 가능하지만 코드로 해야한다  [코드샘플]Sub del_blank()Dim myRNG As RangeDim k as integerIf MsgBox("수식 다 날아갑니다", vbExclamation + vbYesNo) = vbNo Then GoTo ddEnd IfOn Error Resume NextApplication.DisplayAlerts = False    Set myRNG = .. 2016. 11. 17.
thumbnail [엑셀VBA] DB형식으로 빈칸(공백) 채우기 DB형식으로 빈칸(공백) 채우기가끔 데이터를 받으면 누군가 깔끔하게 정리한답시고, 맨 윗줄에만 값을 넣어 놓는 경우가 있다.회계팀에서 자주 그런다..빈칸을 쉽게 채워보자. 연습이니만큼 상황을 쉽게 설정했다.** DO - Loop 구문으로 처리했다.    [코드샘플]Sub wordDBFill()DoIf ActiveCell.value "" Then    ActiveCell.Offset(1, 0).ActivateElse    ActiveCell.value = ActiveCell.End(xlUp).value    ActiveCell.Offset(1, 0).ActivateEnd If Loop Until ActiveCell.Offset(0, 1).value = ""End Sub  이번에도 코드가 지저분 해졌는데,.. 2016. 11. 17.
thumbnail [엑셀VBA] 이름 맨 마지막 글자만 *로 바꾸기(명단 게시) 이름 맨 마지막 글자만 *로 바꾸기(명단 게시)이벤트 당첨자 발표할때 이름 맨 뒤를 *로 바꿀 경우가 있다.한번 코드로 해놓으면 계속 써먹을수 있겠지라는 마음에 한번 해봤다.얼마나 써먹을지는 미지수지만, 언제나 처럼 작동하는것에 감사.    [코드샘플]Sub HIDE_NAME()Dim myRNG As RangeDim i As IntegerDim Lrow As IntegerOn Error Resume NextApplication.DisplayAlerts = False    Set myRNG = Application.InputBox("첫번째 셀을 선택해주세요", , , , , , , 8)Application.DisplayAlerts = TrueLrow = myRNG.CurrentRegion.Rows.Coun.. 2016. 11. 17.
thumbnail [엑셀VBA] 조건에 따라 셀 값 데이터 찾기 조건에 따라 셀 값 데이터 찾기엑셀에서 데이터 매칭하려면 IF문이 엄청 길어지곤 해서 짜증났는데,VBA로 하니 의외로 편하다. 아래 그림에서 data2는 raw에 있는 값이 data1에 있을때, same 텍스트 반환,data3는 ref에 있는 값이 data1에 있을때, same 텍스트를 반환한다. [코드샘플]Sub data_same()Set raw = Range("b4:b16")Set data_1 = Range("d4:d16")Set ref = Range("h4")For Each x1 In raw    For Each x2 In data_1        If x1 = x2 Then        x2.Offset(0, 1).Value = "same"        End If    NextNext  For .. 2016. 11. 17.
thumbnail [엑셀VBA] COLORINDEX로 셀의 색을 칠해보자 COLORINDEX로 셀의 색을 칠해보자나는 셀의 색을 칠할때 거의 컬러인덱스만 쓴다.사실 다른 방법을 모른다.사실 그중에서도 빨간색만 칠한다. 다른 색도 있을까? 유튜브에 인덱스 넘버별 컬러를 확인한 코드가 있어서 나도 해봤다.난 왜 이런 생각을 못했을까? 이제 다른 색도 써봐야지그림에는 1번행이 잘못됐는데, 귀찮으니까, 그냥 업로드    [코드샘플]Sub COLOR_INDEX()Dim X As IntegerDim Y As IntegerX = 1Do Until Cells(X, 1) = ""  Y = 1    Do Until Cells(X, Y) = ""    Cells(X, Y).Interior.ColorIndex = Cells(X, Y).Value    Y = Y + 1    LoopX = X + 1.. 2016. 11. 17.
thumbnail [엑셀VBA] 날짜데이터 월별 합계 날짜데이터 월별 합계아래와 같이 조건이 있다고 하자. _오늘날짜 또는 특정 기준일이 있다_여러날짜들 중 특정 기준일의 월과 매칭하여, 이에 맞는 값을 합산한다 함수로 하면 별거 아닐 수 있겠지만, VBA로는 어떨까,정답은 모르겠다. 나는 날짜변수를 전부 싸그리 그달의 1일로 바꾸고 값이 같을 경우 합산하도록 했다.    [코드예시]Sub monthly_()Dim j As IntegerRange("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) = Cell.. 2016. 11. 17.
thumbnail [엑셀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("원하는 문자 입력(t,.. 2016. 11. 17.
thumbnail [엑셀] 셀 병합 단축키 설정하여 사용하기(병합하고 가운데 맞춤 단축키) 셀 병합 단축키 설정하여 사용하기(병합하고 가운데 맞춤 단축키)엑셀 리본메뉴 기능 중에서 아마 가장 많이 사용되는 버튼 중에 하나가 셀 병합 기능이 아닐까 한다,왜냐면... 단축키가 없기 때문이다.쓸때마다 마우스를 쓰기에도 홈탭으로 이동하는건 매우 귀찮은 일이고, 위치도 상당히 애매하다 ㅋㅋㅋ   방법은 두가지다. 첫째로빠른 실행 도구모음으로 등록을 해서단축키로 사용하는 것,둘째로매크로 작성을 통해 매크로 단축키를 별도로 사용하는 것. 나는 쉽고 편한 빠른 실행 도구모음으로 설정해서 사용한다.- 매크로 단축키는 외우기가 불편하다.병합하고 가운데 맞춤 기능을 빠른 실행 도구 모음에 등록한다.    빠른 실행 도구 모음은 첫번째부터 Alt + 1, 2, 3.... 순서대로 단축키가 할당된다.    이제 Al.. 2016. 11. 15.
thumbnail [엑셀VBA] INPUTBOX로 영역 선택하기 INPUTBOX로 영역 선택하기VBA에서 INPUTBOX를 사용하면 그냥 문자 형식으로 입력이 되는데,APPLICATION.INPUTBOX로 사용하게 되면, 맨 마지막 옵션에 여러가지 입력값 유형을 정할 수 있게 된다. 다른건 모르겠고, RANGE를 쓰려면 8번을 쓰면 된다.   특정영역을 선택해서 뭔가 작업을 할 때 용이하다.아래 코드는 특정영역을 선택해서, 테두리를 치는 예시다.어디까지나. APPLICATION.INPUTBOX를 위해 임의로 짠 코드일뿐 구지 이런 기능은 필요없을꺼다. [코드샘플]Sub BORDER_()Dim MyRNG As RangeSet MyRNG = Application.InputBox("테두리칠 영역을 고르시오", , , , , , , 8)With MyRNG.Borders(xl.. 2016. 11. 15.
thumbnail [엑셀] 나만의 엑셀 버튼 만들기(귀찮은 표 만들기) 나만의 엑셀 버튼 만들기(귀찮은 표 만들기)회사에서 엑셀을 켜면 무심코 하는 일이 있다.보기싫은 안내선을 안보이게 하고,(보기>안내선체크박스해제)  표를 만든다.(원하는영역선택>컨트롤+1눌러서테두리치기) 귀찮다,그냥 버튼으로 만들어 써보자. 코드를 짜도 되고,매크로로 녹화를 해도되겠다.이번엔매크로로녹화를했다. 코드가복잡해졌지만,덜귀찮다ㅋㅋ매크로녹화를모른다면,이번포스팅에서는나오지않으므로X버튼을누르자. 이제 버튼을 만들어보자.녹화한 코드를 한번 확인해 본다.   엑셀 파일을 .xlam파일로 저장하고, 내가 편한 위치로 저장한다.   옵션>추가기능으로 가서,아래쪽 Excel추가기능에서 이동 버튼을 눌러준다.   추가기능에 찾아보기를 선택한다. LINE.xlam파일을선택한다.   Line이라는추가기능이생겼다. .. 2016. 11. 15.
thumbnail [엑셀] 짜증나는 엑셀 첫 화면 서식보기 시작화면 보기 기능 없애기 짜증나는 엑셀 첫 화면 서식보기 시작화면 보기 기능 없애기2013으로 바뀌면서 가장 적응하기 힘든 기능은 엑셀을 처음 켰을때 나타나는 서식 고르기 화면이다. 몇개 켜보면 엄청난 내공에 놀랄 수 있다.MVP님들이 만들었을 것으로 예상되는 좋은 서식들이 가득하나 한번도 쓴적 없다. 많은 분들이 이거 없애는거 모르는 거 같다.  없애자.    파일 > 옵션 메뉴를 클릭한다.    맨 아래'이 응용프로그램을 시작할 때 시작화면 표시'옵션 체크박스를 해제한다.    안나온다.가뜩이나 로딩 오래 걸리는데, 1클릭이라도 건너뛰자. 2016. 11. 11.