본문 바로가기

VBA271

[한글자동화] 아래아 한글 표 제어하기 #3 기존까지는 표를 찾아 들어가서 같은 내용을 무한 반복하는 코드였다면 오늘 선보일 아래아 한글 자동화는 기존에는 VBA에 좀더 특화되었던 코드를 이번에는 한글을 사용하시는 분들에게 좀 더 전문적이고, 실무에서 더 많이 사용되는 방식으로 바꿨다 실제로 누름틀을 구성하는것 까지 VBA로 작성하였지만, 실무에서는 기본적으로 한글에서 누름틀 작업을 끝낸 후에 그것을 불러들이면서 누름틀을 이용하는 코드를 더 많이 선호하고 이용하고 있다. 이 부분에 대해서는 표제어하기 #4에서 선보이기로 하겠다. hwp.addTable 1, 1, 40, 50 hwp.setFont "함초롬돋움", 15 hwp.alignmentCenter hwp.CreateField "이름", "홍길동" hwp.Enter hwp.setFont "함초롬.. 2023. 9. 21.
[기초방] VBA 100제 #65 [ 유효성 검사를 통한 필터링 ] 기초방 64번 문제에 필터링까지 발전한 문제이다. 처음에 의도한건 Filter함수로 해결하는 의도였지만, 엑셀 2021버전이상 가능한 함수여서 고급필터와 정렬함수로 해결하였다.더보기Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim rngAll As Range: Set rngAll = [e5].CurrentRegion Dim rngA As Range: Set rngA = [k6:m6] Dim rngX As Range Dim i& If Intersect(Target, [k6:m6]) Is Nothing Then Exit Sub For i = 1 To 3 Validation rngA.Item(i) '= 유횽성검사 호출 Next i .. 2023. 9. 20.
[기초방] VBA 100제 #64 [ 유효성 검사를 통한 총 수량 구하기 ] 엑셀에서 많이 나오는 문제이다. 각 키값을 조회하여 sumifs를 통해서 총 수량을 구하는 그런 문제.... 이런 문제를 VBA로 풀 사람이 있을까도 싶다..ㅋㅋㅋ 근데 언제는 그런 거 생각하고 문제를 낸게 아니므로...그냥 코드 리뷰를 해보려한다. 유효성 검사를 만들어가는 하위 프로시저가 핵심이 아닐까 한다. Sub Validation(rngX As Range) Dim rngV As Range Dim V Set rngV = Range(rngX(1, -5), rngX(1, -5).End(4)) V = Application.Sort(Application.Unique(rngV)) V = Join(Application.Transpose(V), ",") With rngX.Validation .Delete .Ad.. 2023. 9. 19.
[기초방] 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.