#1문제의 심플버전.
=LET(rngRw,B2:W2, aSn,SCAN("",rngRw,LAMBDA(xAcc,irng, IF(irng="","",IF(irng<>"O",irng,xAcc)))), aRev,INDEX(rngRw,1,SEQUENCE(1,COLUMNS(rngRw),COLUMNS(rngRw),-1)),bSn,SCAN("",aRev,LAMBDA(xAcc,irng, IF(irng="","",IF(irng<>"O",irng,xAcc)))), bRev,INDEX(bSn,1,SEQUENCE(1,COLUMNS(rngRw),COLUMNS(rngRw),-1)),MAP(rngRw,aSn,bRev,LAMBDA(irng,arng,brng, IF(irng="","",IF(arng<>"",arng,IF(brng<>"",brng,irng))))))
1열, 1행 짜리도 에러 안나게 조정한 수식입니다.
=LET(DD, B2:W2,BR, MAKEARRAY(1,COLUMNS(DD),LAMBDA(r,c,"")),BC, MAKEARRAY(ROWS(DD),1,LAMBDA(r,c,"")),fT, LAMBDA(m, IF(ROWS(DD)=1,"",DROP(VSTACK(BR,m),-1))), fB, LAMBDA(m, IF(ROWS(DD)=1,"",VSTACK(DROP(m,1),BR))),fR, LAMBDA(m, IF(COLUMNS(DD)=1,"",DROP(HSTACK(BC,m),,-1))), fL, LAMBDA(m, IF(COLUMNS(DD)=1,"",HSTACK(DROP(m,,1),BC))),fY, LAMBDA(x, IF((x<>"")*(x<>"O"),x,"")),fX, LAMBDA(m, IFS(m="","", m<>"O",m, TRUE,IFS(fY(fT(m))<>"",fT(m),fY(fB(m))<>"",fB(m),fY(fR(m))<>"",fR(m),fY(fL(m))<>"",fL(m),TRUE,m))),REDUCE(DD, SEQUENCE(10), LAMBDA(t,r, fX(t))))
1행이면 fT와 fB 함수를 제거해도 됩니다.
=LET(DD, B2:W2,BR, MAKEARRAY(1,COLUMNS(DD),LAMBDA(r,c,"")),BC, MAKEARRAY(ROWS(DD),1,LAMBDA(r,c,"")),fT, LAMBDA(m, DROP(VSTACK(BR,m),-1)), fB, LAMBDA(m, DROP(VSTACK(m,BR),1)),fR, LAMBDA(m, DROP(HSTACK(BC,m),,-1)), fL, LAMBDA(m, DROP(HSTACK(m,BC),,1)),fY, LAMBDA(x, IF((x<>"")*(x<>"O"),x,"")),fX, LAMBDA(m, IFS(m="","", m<>"O",m, TRUE,IFS(fY(fT(m))<>"",fT(m),fY(fB(m))<>"",fB(m),fY(fR(m))<>"",fR(m),fY(fL(m))<>"",fL(m),TRUE,m))),REDUCE(DD, SEQUENCE(10), LAMBDA(t,r, fX(t))))
오호라...
파워쿼리로 만들어 봅니다.
코드나 파일 올려주세요..
=LET(SArea,B$2:$W$2, SA,B$2, LC,INDEX($A:$Z,ROW(),COLUMN()-1),Data,TAKE(SArea,,MATCH("",SArea&"",0)-1),IFERROR(INDEX(FILTER(Data,Data<>"O"),1,1),IF((SA="O")*(LC<>"")*(LC<>"O"),LC,SA&"")))
=LET(mData,B2:W2&"",revIdx,SEQUENCE(,COLUMNS(mData),COLUMNS(mData),-1),fs,LAMBDA(td,SCAN("",td,LAMBDA(a,b,IF((b="O")*(a<>"")*(a<>"O"),a,b)))),CHOOSECOLS(fs(CHOOSECOLS(fs(mData),revIdx)),revIdx))
대상 URL을 입력하세요
또는 기존의 콘텐츠에 링크
=LET(rngRw,B2:W2, aSn,SCAN("",rngRw,LAMBDA(xAcc,irng, IF(irng="","",IF(irng<>"O",irng,xAcc)))), aRev,INDEX(rngRw,1,SEQUENCE(1,COLUMNS(rngRw),COLUMNS(rngRw),-1)),
bSn,SCAN("",aRev,LAMBDA(xAcc,irng, IF(irng="","",IF(irng<>"O",irng,xAcc)))), bRev,INDEX(bSn,1,SEQUENCE(1,COLUMNS(rngRw),COLUMNS(rngRw),-1)),
MAP(rngRw,aSn,bRev,LAMBDA(irng,arng,brng, IF(irng="","",IF(arng<>"",arng,IF(brng<>"",brng,irng))))))
1열, 1행 짜리도 에러 안나게 조정한 수식입니다.
1행이면 fT와 fB 함수를 제거해도 됩니다.
오호라...
파워쿼리로 만들어 봅니다.
코드나 파일 올려주세요..