본문 바로가기

엑사남172

[의뢰] 차트생성 어느 경영학도의 의뢰이다. 고등학교 이후에 오랜만의 행렬을 공부하였다. 이 의뢰의 핵심은 행렬이 늘어나면서 Table 을 크기가 변화하기에 그걸을 능동적으로 잡을 필요가 있었다. 그 이후에는 테이블을 통해서 차트를 생성해야 하고 그 차트가 유저폼에도 나와야 하는 의뢰이다. 1 능동적인 테이블을 잡기위해서는 행의 숨김과 보이기를 반복하는 코드를 사용하였고 2. 차트를 그리기 위해서 데이터의 값을 입력한 후 그 결과값을 계속적으로 가져와서 차트를 그리기 위한 테이블을 만드는 자료를 구성하였다. 다음은 차트 생성을 위한 코드이다. 더보기 Sub Chart() Dim rngChart As Range Dim rngData As Range Dim strPath As String '폴더의 경로를 넣을 변수 Dim s.. 2023. 8. 6.
[의뢰] CRUD 의뢰 https://www.youtube.com/watch?v=Kn61yGTSwC8 엑사남 33강 관련하여 의뢰가 들어와서 구현해 보았다 강의가 3년전 강의인데도 너무 알찬 강의라고 판단된다. 당시에도 초기 CRUD를 구현하였지만 3년이 지난 지금은 좀 더 고급져진거 같아 맘에 든다. CRUD는 Create Read Update Delete의 약자로 만들고 읽고 갱신하고 삭제...라는 뜻이다. 코드 진행은 이렇다. 1. 전체화면으로 전환여부 2. 검색어창의 PlaceHold구현 3. 새로운 글 작성 4. 관리자 코드로 전체 내용 삭제 5. 해당시트 삭제 6. 해당시트내에 추가 글 작성 원래 목표는 조회결과에서 대표 이미지를 볼 수 있도록 하려고 하였으나, 의뢰인이 불필요하다가 하여 추가 하지 않았으나, 개인적.. 2023. 8. 6.
[기초방] VBA 100제 #59 [ 불일치 영역 색칠하기 ] 기초방 58번에서 언급했듯. 59번 코드가 정석이다. 이유는 58은 성명이 하나인 곳에서 에러를 발생할 것이며, 속도 또한 59번보다 느릴것이다. 영역을 순환하는 것보다. find로 바로 바로 찍어서 영역을 합치기 때문에 데이터 양이 많다면 분명 더 효과적일것이다.' haja_find 함수의 find구문은 일정부분 루틴이 있는 것이기 때문에 반드시 기억하길 바란다. 더보기 Option Explicit Sub 기초방59() Dim rngAll As Range: Set rngAll = [m5:s25] Dim rngA As Range, rngC As Range Dim strFind$ For Each rngC In rngAll.Columns For Each rngA In rngC.Cells If rngA = ".. 2023. 8. 1.
[기초방] 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.