본문 바로가기
[엑셀] 마지막으로 저장한 사람과 시간 셀에 저장하기 엑셀 마지막으로 저장한 사람과 시간 셀에 저장하기업데이트 날짜를 기재할 때,today() 함수를 많이 쓰는데, 실제 마지막으로 저장한 날짜를 기재하고 싶을때가 있다. 엑셀 본연의 기능은 아니지만, 파일에 들어있는 정보를 불러와서파일이 켜질때마다 특정셀에 값으로 넣어 줄 수 있다.   마지막 저장시간 : BuiltinDocumentProperties("Last save time")마지막 저장한 사람(PC이름) : BuiltinDocumentProperties("Last author") 워크시트의 OPEN 에다가 넣어주면, 파일이 켜질때마다 업데이트가 된다. 갑자기 궁금해서 적어봄 2020. 5. 30.
[엑셀] 배열함수 안에서 와일드카드 문자 사용하기 sumif 와 sum배열함수두 가지 함수 사용에 있어 차이는 뭐라고 생각이 들지 모르겠다.개인적인 생각은 sumif는 조건에 와일드카드문자(*)를 사용할 수 있다는 장점을 가지고,sum배열수식은 조건을 정의하기 위해 다른 함수를 사용할 수 있다는 장점을 가지는 정도겠다.   배열함수 내에서의 와일드카드문자배열함수 내에서, find함수를 사용해서 와일드카드문자(여기서는 *)를 대체해서 사용하는 방법이었다. 아래 표에서, 입금은행이- 국민/기업은행 이면 "국민은행 또는 기업은행" 표시- 우리은행 이면 "우리은행" 으로 표시하려고 한다.     사용된 수식을 보면 입금은행 셀에서 "국민" 또는 "기업" 문자열을 FIND 함수로 찾고,이를 COUNT 함수로 에러가 아닌값을 숫자로 변환,결과가 0일 경우(같은 값.. 2020. 2. 17.
[엑셀VBA] 폴더 생성, 확장자별로 파일 이동 엑셀VBA로 폴더 생성, 확장자별로 파일 이동카메라로 사진을 찍었는데, SD카드의 같은 폴더 안에, jpg, mov, raw 파일이 한꺼번에 들어있다.확장자별로 폴더를 만들고, 확장자에 따라 파일을 이동시키려고 한다. 당신이 선택할 수 있는 방법은?1. 확장자 명으로 소팅 -> 잘라내기 -> 붙여넣기2. 프로그래밍(파이썬? VBA?)   PC정리로 파이썬이 삭제된 관계로, 일단 VBA로 작성해본다. 생각만치 잘 되지 않았지만, 한번 해놓고 나면, 응용해서, 엑셀프로그램과 연동해서 쓸수 있다는 장점은 있다. 파일 리스트 시트를 만든다거나..블로그 글들을 여러개 참고 했는데, 메모를 해놓지 않아, 참조 경로를 나열할 수가 없다.아쉬운 부분이지만, 혹시 이글을 보시는 분이 있다면 도움이 되길 바란다. 2020. 1. 20.
[엑셀VBA] 텍스트(입력키) 매크로 엑셀 텍스트(입력키) 매크로네이버의 검색순위를 조작할때, 작업을 한다고들 하는데,매크로를 사용한다는건 공공연한 비밀이다. 비슷한 맥락으로 엑셀VBA로 키를 입력할 수 있는데,엑셀 시트에 입력한 값을 던져줄 수 있다는 장점이 있다.   이는 인터넷 브라우저에서도 쓸 수 있는데, 특히 같은 회사에서 나온인터넷 익스플로러에 친화적인 것으로 보인다.(불행히도 지금은 잘 쓰이지 않지만...) 시험삼아 한번 해보자, 필요한 일이 많지는 않겠지만. ㅋ    아무도 쓸일은 없겠지만, 사용된 코드를 메모해 두었다.블로그 이곳 저곳을 기웃거리며 정리한 코드라 정신없으니, 필요하신 부분만 사용하심 될듯. 2019. 12. 30.
[엑셀] 함수에 있는 상수 변수를 채우기할때 1씩 늘리기 엑셀 함수에 있는 상수 변수를 채우기할때 1씩 늘리기엑셀함수에서는 임의로 리스트 형태같은 걸 사용하기 애매하기 때문에,드래그 했을때, 상수 변수에 1부터 몇까지라는 조건을 붙이기가 애매하다.이는 column() 혹은 row() 함수로 간단하게 해결이 가능하다.   가끔 고수들의 문서에서 해당 내용을 보긴 했지만,내 것으로 만드는데는 약간의 시간이 걸렸다.(별로 쓸일 없음)실상 알고 보, 별거 없는 내용이긴 하다. (세상 모든 일이 그렇지.. 허허) 계획에는 없었는데, (사실 원대한 계획같은건 없다..)1년만에 발견한 어떤 분의 댓글에 이 내용이 있길래 적어본다. 2019. 12. 20.
[엑셀] 셀 이동 이벤트(VBA) : SELECTION_CHANGE EVENT 엑셀 셀 이동 이벤트(VBA) : SELECTION_CHANGE EVENTVBA가 뭔지 모르던 때 우연히 봤던 블로그 글에서,FOR/IF 문 챕터에 셀 이동 이벤트로 색이 칠해지는 매크로를 보고,신기하다고 생각했던 기억이 있다.   거의 이것때문에, 이거저거 코드 짜는 것에 대한 걸 취미로 스터디 하게 된 것 같다.    신박하기는 하나, 실무에서 사용할 일은 별로 없을 듯.그래도 이거 하나만 알아도 대부분의 코드에서 응용해서 사용이 가능하다.  Private Sub Worksheet_SelectionChange(ByVal Target As Range)        rngCount = Target.Count            For x = 1 To rngCount            If IsNumer.. 2019. 12. 17.
[엑셀VBA] VBA에서 worksheetfunction에 없는 엑셀함수 사용하기 VBA에서 worksheetfunction에 없는 엑셀함수 사용하기application.worksheetfuction 을 사용하면, 왠만한 엑셀함수를 VBE에서 사용할수 있다.문제는 당연히(?) 없는 함수도 있다는 점인데, 그냥 생각해보면 VBA에서 셀에다가 그냥 수식 텍스트가 입력되게 하면 될 것 같다.... 확신은 없지만..   우선, worksheetfuction을 써보자.Cells(1, 2).Value = Application.WorksheetFunction.Sum(1, 2) 요 식은=sum(1,2)이런 텍스트를 쳤을때와 동일한 효과일 것이다.이런 형태의 수식을 적어보는건 어떨까..?=HYPERLINK("#'"&"Sheet2"&"'!A1","GO")   1. 특수문자 처리.: 특수문자는 쌍따옴표 .. 2019. 12. 3.
[엑셀VBA] 시트 숨기기/해제하기 컨트롤러 엑셀VBA - 시트 숨기기/해제하기 컨트롤러여러명이 파일이 사용하다보면 필요에 따라 시트를 만들기도 하고,숨기기도 하는데, 시트를 숨기기/해제하기는 영 귀찮고, 놓치기도 쉽다.가끔 외부로 내보내는 파일에 숨기기가 되어있는지 모르고 보내는 ㅎㄷㄷ한 때도 있다.   이를 방지하기 위해 간단한 숨기기/해제하기 컨트롤을 VBA로 만들어 보았다.허접한 코드이지만, 좀 수정하면 괜찮아 질지 모른다. 사용법은 아래 동영상으로 올려뒀는데, 핵심은 2개의 사용자 버튼을 사용했다는 점이다.    첫번째는 목록을 만드는 거고, 두번째는 정보가 업데이트 됐을때, 이를 갱신하는 것이다.코드는 아래 있으니, 필요하신 분들은 가져다가 수정해서 쓰시면 되겠음. [시트현황 목록 만들기]    [숨기기 여부업데이트하기] 2019. 12. 2.
[엑셀] 따옴표(")를 문자로 인식하는 방법(substitute 함수에서 따옴표(") 바꾸기) 엑셀 따옴표(")를 문자로 인식하는 방법(substitute 함수에서 따옴표(") 바꾸기)엑셀에서는 문자를 "" 안에 넣어서 처리한다.그럼. substitute같은 함수에서 바꿀 텍스트를 넣어야하는데,따옴표(") 를 바꾸고 싶으면,세개(""") 넣으면 될까? 모두의 예상처럼 아니다. 다른 프로그램 언어에서처럼 예외 문자에 대한 표시를 해줘야하는데,그런데, 불행하게 엑셀에서는 그게.. 따옴표(")다.   즉, 따옴표(")를 바꾸고 싶으면 텍스트를 나타내는 따옴표("") 사이에,예외 처리 따옴표(") 하나와 바꾸고픈 텍스트 따옴표(")를 추가하여, 총 4개의 따옴표("""")를 적어주면 된다.   그럼 여기서 문제, 따옴표 두개를 하나의 문자로 바꾸려면,총 몇개의 따옴표를 써야할까. 텍스트를 표시하는 따옴표.. 2019. 11. 14.
[엑셀] 배열수식 한방에 정리하기 엑셀 배열수식 한방에 정리하기VBA를 쓰지 않는다면, 배열수식은 끝판왕같은 느낌이다.나도 한동안 그랬었는데, 내부에서 어떤일이 벌어지고 있는지 이해하지 못했기 때문이라 생각된다.   알고있는 선에서 배열수식을 사용했을 때,내부적으로 어떤일이 일어나는지 정리를 해봤다.  누구에게는 하찮은 거겠지만, 누구에게는 반드시 도움이 될수 있을 것이라 확신한다. 2019. 9. 26.
[엑셀] CHAR함수로 8자리 랜덤문자 생성하기 엑셀 CHAR함수로 8자리 랜덤문자 생성하기CHAR함수를 쓸일은 많지 않다.제목처럼 8자리 패스워드를 재발행할 때나 볼법한 랜덤문자를 만들지 않는다면 말이다.하지만 CHAR(10)으로 줄바꿈을 하거나 INDIRECT에 CHAR함수를 넣어주면.. 왠지 잘하는 것처럼 보인다고 할까...?    내가 쓰기위서라기 보다 남들이 해놓은걸 봤을때 모르면 안되니까. 알아두자 2019. 9. 26.
[엑셀/VBA] 전체시트 PDF로 출력하기 엑셀 전체시트 PDF로 출력하기엑셀시트를 PDF로 저장할 경우가 많은데, 저장하는건.. 그냥 다른이름으로 저장하면 되고,모든 시트를 페이지로 저장할때는 옵션 하나만 건드려 주면 끝이다. 그럼에도 불구하고, VBA로 단추를 하나 만들어주면 편하지 않을까 해서, 시작한 일인데, 의외로 좀 짜증나는 설정을 해줘야한다. 2019. 9. 19.