[기초방] VBA 100제 #89 [ 쇼핑몰 키워드 정리하기 ]
보통 이런식의 키워드 분류를 쇼핑몰을 운영하시는 분들이 많이 사용하시고 요청도 많이 들어온다. 한달전만해도 이런 문제가 들어오면 정규식으로 패턴을 등록해서 하나하나 패턴을 모두 대조하면서 원하는 키워드를 도출하였다. 물론 코드도 지저분했지만 이젠 딱~!! 한줄이면 된다. 일단 코드 진행에 대해서 시뮬레이션을 해보자 상품명에서 키워드들을 순환하면서 변경될 키워드들로 하나씩 바꾸면서 그 결과값을 출력해야 한다. =LET(_s,B5:B30, REDUCE(_s,$D$5:$D$24, LAMBDA(_t,_old,SUBSTITUTE(_t,_old, OFFSET(_old,0,1))))) LET함수로 _s 에 [B5:B30] 영역을 넘기고, REDUCE함수에 _s를 초기값으로 주고 바꿔줄 영역을 기존 영역보다는 추가할 ..
2023. 10. 28.
[기초방] VBA 100제 #88 [ 리스트에서 해당 월 카운트하기 ]
해당 리스트에서 월별로 카운트를 해야 하는 함수이다. 이런 문제를 vba로 풀려면 행방향으로 진행하면서 각 행의 셀들을 순환하면서 각셀의 월을 구한 다음 그값의 월 대로 구분하여 카운트하면서 리스트를 모두 순환하면 된다. 각설하고 이 문제를 풀려면 이렇다. 행단위로 이동하고 그 이동한 값들을 비교하여 값을 도출하면 된다. 변수를 이용한 LET 함수를 풀면 =BYROW(C4:H53,LAMBDA(a, LET( _월10,SUM(IF(MONTH(a)=10,1,0)), _월11,SUM(IF(MONTH(a)=11,1,0)), "10월 : " &_월10 & " _ " & "11월 : " & _월11 ))) BYROW 함수로 해당 영역을 LAMBDA함수로 넘기게 되고, LET 함수로 각각의 변수에 계산된 결과값을 넘긴..
2023. 10. 28.