본문 바로가기

엑사남172

[기초방] VBA 100제 #63 [ X축, Y축 최대 최소값 구하기 ] x축과 Y축의 최대 최소값을 구하는 문제이다. 단 X축에 최대값이 X축의 최대값과 Y축의 최대값이 X축에 함께 있으면 Y축의 두번째 최대값에 빨간색을 입혀야 한다. 영역의 최대 최소값은 하위프로시저를 호출하면서 작성하면 편하다 Sub find_Cell(rngAll As Range) Dim rngA As Range, rngX As Range Dim maxNum&, minNum& maxNum = WorksheetFunction.Max(rngAll): minNum = WorksheetFunction.Min(rngAll) For Each rngA In rngAll If rngA.Value = maxNum Then rngA.Font.Color = vbRed If rngA.Value = minNum Then rng.. 2023. 9. 19.
[기초방] VBA 100제 #62 [ 홀수_짝수차 구별하기 ] 더보기 Option Explicit Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim rngU As Range Dim rngAll As Range: Set rngAll = [e7].CurrentRegion Set rngAll = rngAll.Offset(1, 1).Resize(rngAll.Rows.Count - 1, rngAll.Columns.Count - 1) '= 차수별 데이터 If Intersect(rngAll, Target) Is Nothing Then Exit Sub '= 차수별 데이터를 클릭하지 않으면 종료 rngAll.Interior.ColorIndex = xlNone '= 색상 초기화 rngAll.Font.Bold = Fal.. 2023. 9. 18.
[한글자동화] 아래아 한글 표 제어하기 #2 한글 표 제어하기 2편정도로 생각한다. 기본에는 이미 만들어진 표를 찾아가면서 내요을 넣었다면, 이번 구문은 새문서를 만들고 표를 하나 만든 후 그것들을 모두 복사한후 다시 셀을 순환하면서 이름표를 만드는 구문이다. 보통 이러한 것을 할때는 표를 하나를 만들 후 그 안에 [누름틀]을 생성한 후 그것을 복사하여 누름틀 내용을 변경하면서 작업을 한다. 이것을 한글 표 제어하기 3편에서 코드를 공개하도록 하겠다. 더보기Sub 이름표만들기() Dim fbln As Boolean: fbln = True Dim strPath$ Dim i& Dim rngX As Range: Set rngX = [e7] Dim rngA As Range strPath = ThisWorkbook.path & "\한글자동화.exe" '= .. 2023. 9. 17.
[기초방] VBA 100제 #61 [ 사진 정보 가져오기 ] 이 문제를 낸 의도는 거추장스런 For문 또는 Find문을 사용하는 것보단 함수식을 사용해서 빠르고 간편하게 사용할 수 있다는 생각에서 문제를 내었지만, 아직까진 속도에서 딕셔너리를 넘길 수 없었다. 이번 딕셔너리처럼 Value값이 배열로 담을 수 있다면 속도는 더 짧아질것이다. 본 문제를 쉽게 접근하게 되면 이렇게 피를 보게 된다. 더보기 Option Explicit Sub 기초방61() Dim rngAll As Range: Set rngAll = Range([a2], [a2].End(4)) Dim Vall, VA, vDict Dim T!, i&, sKey$ Dim Vtemp() Dim Dict As Object: Set Dict = CreateObject("Scripting.Dictionary") r.. 2023. 9. 15.