목록매크로 (8)
rand(life)
셀안에 있는 특수문자만 제거하는 코드 지식인 답변에서 가져옴 Option Explicit Sub textchange() Dim c As Range Dim rSelect As Range Dim oReg As Object On Error Resume Next Set rSelect = Application.InputBox("영역 선택", "선택", Selection.Address, , , , , 8) If rSelect Is Nothing Then Exit Sub Set oReg = CreateObject("VBScript.RegExp") For Each c In rSelect.Cells If c.Value "" Then With oReg .Pattern = "[\\/:*?""|]" ''특수문자 추가 하시면 ..
Option Explicit Sub 순열조합_매크로() Dim 항목배열 As Variant, wf As WorksheetFunction Set wf = WorksheetFunction ' 엑셀 시트함수 Application.ScreenUpdating = False ' 기존자료 삭제 및 머릿글 Range("d1").CurrentRegion.Offset(1).Delete xlUp ' 항목 셀범위를 1차원 배열로 변경 하기 위한 작업 With Range("a2", Cells(Rows.Count, "a").End(xlUp)) 항목배열 = wf.Transpose(.Value) ' 가로세로 바꿈 If .Columns.Count > 1 Then ' 가로면 가로세로를 한번 더 바꿈 항목배열 = wf.Transpose(..
이동 옵션 (F5 키 - 옵션)은 여러모로 쓸 모가 많은 기능이다. 그런데 가끔씩, "마지막 데이터 셀"이 의도대로 기능하지 않을 때가 있다. 우리 생각에는 이 기능이 "현재 데이터 중에서 맨 마지막행,열에 있는 셀"을 보여준다고 생각하는데실제로 해보면 "지금까지 이 시트에서 기록되었던 셀 중에서 맨 마지막행.열에 있는 셀"을 보여주는 것이다. 즉, 한번이라도 값이 기록된 적이 있었던 셀 전체 중에서 맨 끝셀을 보여준다. 예를 들어, A1셀에 데이터가 있는 상태에서 A1048576 셀 (A열의 맨 마지막 행이다)에 데이터를 기록했다가 삭제하면이동 옵션에서 마지막 데이터 셀을 선택하고 확인하면 일반인의 생각에는 A1셀로 이동해야겠지만 실제로는 A1048576 셀로 이동한다. 물론, 이 현상은 파일을 저장하..
지난 번에 배웠던 것을 써먹은 사례이다. 위와 같이 A1:D1의 숫자 배열과 같은 배열을 아래 5행에서 찾아서, 그 바로 아래 행에 색깔을 칠하는 매크로이다. 포인트는 파란색 칠한 부분이다. Option Explicit Sub match_serial() Dim v As String Dim a As Range Dim wf As WorksheetFunction Set wf = WorksheetFunction v = Join(wf.Transpose(wf.Transpose(Range("a1:d1")))) For Each a In [a5:L5] If Join(wf.Transpose(wf.Transpose(a.Resize(, 4)))) = v Then a.Offset(1).Resize(, 4).Interior.Co..
지난번에 몇번 올라왔던 사용자 정의함수의 매크로 버전이다. 어떤 분이 엑셀이 느려진다고 해서 만들어보았다.속도 자체는 크게 다르지 않은 것 같다. 아무래도 전체 셀을 순환해야하니까....그래도 사용자정의함수였을 때는 셀에 다른 입력을 하거나하면 새로 계산을 하느라 버벅였는데지금은 결과값이 수식이 아니라 텍스트로 입력이 되기 때문에, 새로 계산을 하지 않는다.그 점은 더 나아진 것 같다.Option ExplicitSub CText()Dim strTemp() As StringDim rng1 As RangeDim rng2 As RangeDim rng3 As RangeDim r1 As RangeDim rr1 As RangeDim i As Integer, n As Integer, k As Integer Set r..
동일 값의 셀 병합하기 (출처: http://www.iexceller.com/) [표1]처럼 되어있는 것을 [표2]처럼 바꾸는 것입니다. (반대방향으로 (표2에서 표1로) 바꾸는 것은 이전에 올린 글을 참고하세요.)매번 긁기가 귀찮아서 파일로 만들었습니다^^; Sub SameCellMerge() Dim rngTarget As Range Dim rngCell As Range Dim strAddress As String Dim intNum As Long Dim intCount As Long Dim intTemp2 As Long Dim intTemp As Long Dim i As Integer Application.DisplayAlerts = False On Error GoTo ET ' strAddress =..
어느 분이 댓글로 질문하신 내용입니다. http://flogsta.tistory.com/632#comment5458065 질문이 있는데요 만약에 같은 폴더 안에 있는 각각의 엑셀 파일에 동일한 메크로를 적용하고 싶을때는 메크로를 어떤 방식으로 돌려야지 가능한지 궁금해서 문의 드립니다. 제가 한 폴더 안에 엑셀 파일이 50개가 넘는데요 작업이 쉽지가 않아서요. 제가 가진 지식으로 해결할 수 없는 문제에 닥치면, 일단 구글의 도움을 빌립니다. 그랬더니, 역시나 답이 나왔습니다. 출처: http://www.eggheadcafe.com/software/aspnet/33007769/run-macro-on-multiple-files.aspx 다음의 매크로는 특정 폴더(여기서는 C:\Temp\)안에 있는 모든 엑셀..
2. [편집] 2.1 다른 이름으로 저장하기- 암호 걸기 2.2 행열 크기 조정하기 2.3 셀병합하기 / 병합 해제하기 2.4 행열 숨기기 표시하기/ 시트 숨기기 표시하기 2.5 시트복사하기 – 이동하기 2.6 정렬 및 필터 3.[차트] 3.1 간단한 차트 작성 3.2 차트 종류 변경 3.3 차트 구성요소 추가 - 데이터 값 표시하기 3.4 이중 축 차트 작성 3.5 차트에 도형 이용하기 3.6 아래아한글(HWP)에 차트 복사하기 4.[인쇄] 4.1 미리보기/ 용지 방향/ 여백 조절 4.2 용지에 맞게 축소(자동맞춤) 4.3 페이지나누기/ 페이지 나누기 미리 보기 4.4 제목줄 반복 인쇄 /머리글 - 바닥글 설정 / 페이지레이아웃 보기 5.[기타] 5.1 텍스트파일을 엑셀로 불러오기 5.2 수식 입력시 ..