본문 바로가기

VBA271

[기초방] VBA 100제 #83 [ 테이블 역순으로 출력하기 ] 사진에서 각각의 가격들이 다른건 문제가 랜덤수로 되어 있어서 그때그때 변해서 약간의 차이가 있음...저거 보기 불편한 분들은 가격을 랜덤수가 아닌 값으로 변경하길... 역순으로 출력하면 되기에 너무 어렵게 생각하지 말고 FOR문을 역으로 타면 아주 쉽게 풀 수 있는 문제이다. FOR 문에 STEP이 -1 인건 역순으로 오겠다는 소리이다. 시작은 전체영역의 행의 값부터 -1씩 줄여가면서 1까지 FOR문을 순환하겠다는 뜻이다. 365함수를 잠깐 리뷰하면 =LET( →step1, 영역지정, _range,B5:C30, →step2, 헤더와 / CHOOSEROW의 상수식을 - 붙혀서 배열에서 거꾸로 선택 VSTACK({"품목","가격"},CHOOSEROWS(_range,-SEQUENCE(ROWS(_range))).. 2023. 10. 20.
[기초방] VBA 100제 #82 [ 테이블 정렬 + 합계구하기 ] 표를 정렬하고 합계를 구하는 문제이다. 이문제는 365 함수의 MAKEARRAY + 테이블 정렬을 복습하는 차원으로 만들었다. =HSTACK( MAKEARRAY(ROWS($B$4:$F$13),COLUMNS($B$4:$F$13), LAMBDA(r,c,INDEX(SORT(INDEX($B$4:$F$13,r,),,,1),c))), BYROW(B4:F13,LAMBDA(s,SUM(s))) ) 이문제의 관건은 역시나 가로행의 정렬이었는데 시훈아빠님께서 정말 놀라운 꿀팁으로 풀어버렸다. 코드는 이렇다. SMALL 함수로 정렬을 하는 TRICK을 선보였다...지림 시훈 아빠님의 코드를 참고하여 본인 코드를 공개하려고 한다 하나는 셀기반으로 출력을 한거구 또 하나는 TEXTSPLIT + 배열상수 방식을 VBA로 풀어낸 것.. 2023. 10. 20.
[365 함수리뷰] 간편차트 만들기 이번 차트만들기는 요즘은 그냥 365함수는 아니지만 만들어보았다. 조건부 서식탭에 보면 데이터 막대나 색조 부분이 있어서 굳이 저렇게 만들필요는 없지만 .... REPT("n",C3/5) 코드는 의외로 간단한데, REPT함수에 반복할 문자 [n]을 입력하고 반복횟수를 넣으면 되는데 본인은 그래프가 너무 길게 늘어나는게 싫어서 원래 숫자에 5을 나눠서 그래프의 길이를 임의로 줄였다.. 이렇게 하면 소문자 n 이 숫자만큼 늘어나는데 여기서 차트 영역을 되는 곳에 폰트를 Wingdings 로 변경해야 본인과 같은 느낌의 차트 모양이 나오게 되니 참조하길 바란다. 2023. 10. 20.
[365 함수리뷰] 달력만들기 365 함수로 달력만들기이다. 본인은 이런 비슷한 달력들을 많이 만들어보았다.. 의뢰에도 이런 비슷한 문의가 들어왔기 때문에 지저분한 코드에 비해서 어렵지않게 만들어 왔던거 같다.. 하지만 365함수로 만든 달력을 보면서 진짜 [대단하다] 말밖에는 생각나지 않는다. =LET( →step1, 요일표시, _head, {"일", "월", "화", "수", "목", "금", "토"}, →step2, SEQUENCE 함수로 달력표시 - WEEKDAY 함수로 요일 위치를 찾아감, _date, SEQUENCE(5, 7, B2) - WEEKDAY(B2) + 1, →step3, 해당월이 아니면 표시안함 / 날짜 표시는 일자만 나오도록, _modify, IF(MONTH(B2) MONTH(_date), "", TEXT(_d.. 2023. 10. 20.