본문 바로가기

VBA/엑사남_기초방86

[기초방] VBA 100제 #55 [ 색상그룹평균 ] 색상그룹의 평균을 구하는 구문이다. 이런 문제는 딕셔너리로 하면 더 빠르고 코드도 간단하겠지만 기초방이라는것을 감안하여 임시배열을 통해서 풀어보았다. 더보기 Option Explicit Sub 색상평균구하기() Dim rngAll As Range: Set rngAll = Range([h5], [h5].End(4)) Dim rngA As Range Dim color$, r&, n& Dim vtemp ReDim vtemp(rngAll.Cells.Count, 1) '= 임시배열 크기 With [m4].CurrentRegion.Offset(1) '= 초기화 .Interior.color = xlNone .ClearContents End With For Each rngA In rngAll If InStr(color.. 2023. 7. 5.
[기초방] VBA 100제 #54 [ 색상그룹정렬 ] 색상그룹정렬하는 코드이다. 사용한 코드는 오랜만에 컬렉션과 For each조합으로 풀어보았다. 더보기 Sub 기초방54_색상정렬하기() Dim Col As New Collection Dim Mycol Dim rngAll As Range: Set rngAll = Range([c4], [d4].End(4)) Dim rngA As Range, rngS As Range Dim rngX As Range: Set rngX = [h4] Dim Cnt& For Each rngA In rngAll.Columns(2).Cells '= 색상 추출 On Error Resume Next '= 고유한 색상만 추출 Col.Add rngA.Interior.Color, CStr(rngA.Interior.Color) On Error G.. 2023. 7. 4.
[기초방] VBA 100제 #53 [ 색상정렬 ] 색상 정렬하는 문제이다. 색상 관련한 문제는 많이 안낸거 같아서 앞으로 2 - 3 개 정도 재밌는 문제로 찾아가려 한다. 코드 진행은 1. 배열에 기본이 되는 색상코드들을 담고 2. 전체영역을 순환하면서 해당 색상이 배열의 몇번째에 위치값을 찾아서 해당 셀을 출력해주면 된다. 3. 이때 배경색과 글자색을 같게 하여 마치 배경만 나온거 처럼 연출한다. 4. 마지막으로 전체영역을 재 순환하며 글자색을 검은색으로 하여 코드를 마무리한다. 더보기 Option Explicit Sub 컬러_정렬() Dim sample() Dim rngAll As Range: Set rngAll = [b4:b10] Dim rngA As Range Dim n&, sm, r& [k4:n10].Interior.Color = xlNone .. 2023. 7. 3.
[기초방] VBA 100제 #52 [ 민원인 서식변경 ] 민원인 서식을 변경하는 문제이다. 줄바꿈인 chr(10) 과 Replace를 이해하느냐의 문제이다. 더보기 Option Explicit Sub 서식명변경하기() Dim rngAll As Range: Set rngAll = [c8:c13] With rngAll .Copy [g8] .Offset(, 4).Replace " (", Chr(10) & "(", xlPart '= 기초방 52 .Offset(, 4).Copy [k8] .Offset(, 4).Offset(, 4).Replace Chr(10) & "(", " (", xlPart '= 기초방 52-1 .EntireRow.AutoFit '= 자동 열높이 End With End Sub Sub 모두지우기() Dim rngAll As Range: Set rngA.. 2023. 7. 3.