본문 바로가기

VBA271

[365함수] 병합풀기도 한방에 고고 예전 vba 포스팅에서 많이 했던 병합된 셀을 푸는 문제를 365 함수로 구성해 보았다. TEXTSPLIT함수로 해당 행을 줄바꿈 [ CHAR(10) ] 을 구분자로 하여 텍스트를 분리한 후 그것들을 병렬로 배치한 후 하나씩 행방향으로 쌓아올리면 된다. =LAMBDA(tbl, DROP( REDUCE("",tbl, LAMBDA(a,b, VSTACK(a, HSTACK(TEXTSPLIT(b,,CHAR(10)),TEXTSPLIT(OFFSET(b,,1),,CHAR(10)) )))) ,1) )(E3:E6) 병합셀을 풀 영역의 전체가 아닌 한 열만 잡은 후 REDUCE함수로 전달된 행을 HSTACK(TEXTSPLIT(b,,CHAR(10)),TEXTSPLIT(OFFSET(b,,1),,CHAR(10))) HSTACK으로.. 2024. 2. 17.
[365함수] FILTER 함수가 없는 누군가에게 엑셀을 조금 배웠다 할때가 VLOOKUP으로 좀 까불던 때가 아닐까 한다. 하지만 VLOOKUP도 정확히 일치하는 값이 다수일때는 가장 첫번째 값만 가져오기에 이 또한 후 가공을 해줘야했다.. 이러한 번거로움을 해결하기 위해 365에서는 FILTER함수라는 녀석을 가지고 나왔다. 예전에는 위와 같은 문제를 해결하기 위해서 FILTER를 걸어서 해결하였다면 최근에는 365에서 간단하게 처리할 수 있다. =FILTER([출력할영역],[찾을값의 영역]=[찾을값]) 위와같이 하면 [찾을값의 영역]에서 [찾을값]과 일치하는것을 [출력할영역]에 설정된 DATA를 모두 가져오는 것을 볼수 있다. 허나 엑셀 365가 아닌 유저들에게 복잡하지만, 한줄기 빛같은 유용한 수식을 공개하려고 한다. ㅁ데이터의 영역 =INDEX.. 2024. 2. 16.
[365리뷰] 엑셀365함수와 수식시리즈_84[feat. 우노사설님] https://www.youtube.com/watch?v=ArRyv21LlnI&t=50s 시작일과 종료일사이의 제외요일을 제외한 나머지 날짜와 요일을 출력하는 문제이다. 논리식으로 시작일과 종료일 사이의 날짜의 요일을 제외요일과 비교하여 같으면 TRUE를 다르면 FALSE값을 반환하므로, FALSE값의 날짜와 요일만 출력하면 되는 문제이다. =LAMBDA(시작일,종료일,제외1,제외2, LET( →step1, "입력된 날짜로 date 테이블구성", date, 시작일+SEQUENCE(종료일-시작일+1,,0), →step2, "제외1과 제외2 값을 비교하는 함수구성", f, LAMBDA(r, OR(TEXT(r,"aaaa")=제외1,TEXT(r,"aaaa")=제외2)), →step3, "date테이블을 순환하면.. 2024. 2. 11.
[VBA] 네이버 영어사전 LV5.(댓글 또 요청) 네이버 사전이 json구조로 변경이 되어서 lv4에서 lv5로 업데이트 완료 더보기 Option Explicit Sub Haja_word_Lv4() Dim rngAll As Range: Set rngAll = Range([a2], [a2].End(4)) '= 단어 영역 순환 Dim rngA As Range Dim response, test As Object Dim html As Object: Set html = CreateObject("htmlfile") Dim xmlhttp As Object: Set xmlhttp = CreateObject("msxml2.xmlhttp") Dim strUrl$, strplay$ Dim json As Object Dim temp As Object rngAll.Next.R.. 2024. 2. 11.