본문 바로가기
엑셀

엑셀 오른쪽에서 왼쪽으로 순서대로 규칙에 맞게 정렬 및 이동

by 컴퓨터쟁이 2024. 3. 14.
반응형

 

오늘 위에 내용과 비슷한 엑셀 질문을 받았습니다. 

어떤 곳에 쓸지 모르겠지만 위에 엑셀을 이용하기 위해서는 순서와 정렬이 필요 합니다. 

엑셀 질문하신분께서는 위 내용을 함수로만 만들고 싶어 했으며, vba 를 사용을 원하시 않아셨어요. 

위 엑셀 질문을 조금 더 상세하게 설명 드리겠습니다. 

1번 우, 리, 집 이라는 명칭이 있으며, 2개 이상이면 다음 열에 같은 이름이 생성 되도록 만들고 싶어 하셨어요. 

순서는 그대로 지킨 상태에서 저렇게 정렬 되면 좋겠다고 하셨습니다. 

 

조금더 예를 들자면 "우10", "리1", "집2" 이면 우2 우2 우2 우2 우2 리1 집2 이런식으로 나오길 원하신다는 거였어요.

 

그럼 위 내용을 어떻게 해결 할지 작성해 보겠습니다. 

상상력과 응용능력을 엑셀은 참 여러가지를 할 수 있지요.

그래서 저도 조금 응용을 해봤습니다. 


첫번째 할일 

1번 항목들을 나열하는 것입니다. 

우, 리, 집 이라는 글자가 여러개 발생하여야 하는데 이건 미리 여러개 만들었습니다. 

2번 정해진 숫자에 맞게 쪼개질 수 있도록 수식을 걸어 줍니다. 

3번 순번을 정해 줍니다. 

아래와 같이 no1번과 no2의 함수는 다르며, no3부터는 모두 같은 함수를 사용 하였습니다. 

No1 =IF(K5="",0,1)

No2 =IF(K6="",H5,H5+1)

=IFERROR(VLOOKUP(N15,H:K,4,0),"")

 

왼쪽에서 부터 순서대로 작성 해볼께요 .

묶음은 2로 정했습니다. 

 

수를 수량에 맞게 묶어서 몇개의 묶음이 필요한지 생각을 하고 

생각한 묶음을 잘 나타냅니다. 

그리고 Vlookup과 iferror를 사용하여 값이 없는 칸은 빈칸으로 변경 합니다. 

 

마지막으로 if 함수를 사용하여 숫자에 값이 없는 행은 빈칸으로 변경 합니다. 

 

 

 


 

 

아래와 같은 결과물이 됩니다. 

 

 


순서를 나열하고 보이는 값이 동적으로 보이게 하는 방법을 생각하여 만들었습니다. 

쓰다보면 쓸모가 많은 부분들입니다. 

사용한 함수를 나열하겠습니다.

 

=ROUND(C5/2,0)

엑셀 ROUND 함수 (c5셀의 나누기 2 , 소수점 몇자리까지 보이게 할지 정합니다.)

 

=IF(D5*2-C5=0,2,1)

엑셀 IF 함수  (d5 곱하기 2 빼기 c5셀이 0이면, 2를 보이고, 0이 아니면 1을 보이게 하라)

 

=IF(K6="",H5,H5+1)

엑셀 IF 함수  (k6이 빈칸이면, h5셀을 보이고, 빈칸이 아니면 h5셀+1을 보이게 하라)

 

=IF(K5="",0,1)

엑셀 IF 함수  (k5이 빈칸이면, 0이 보이고, 빈칸이 아니면 1을 보이게 하라)

 

=IF(VLOOKUP(J5,B:E,3,0)-I5>0,$A$3,IF(VLOOKUP(J5,B:E,3,0)-I5=0,VLOOKUP(J5,B:E,4,0),""))

엑셀  IF, VLOOKUP  함수 

 

=IFERROR(VLOOKUP(N5,H:K,3,0),"")

엑셀  IFERROR 함수 값을 못불러오는 것을 빈칸으로 처리 합니다.

 

=IFERROR(VLOOKUP(N5,H:K,4,0),"")

=IF(P5="","",N5)

 

위 엑셀 함수들만 이용하여 저렇게 만들어 보았습니다. 


위의 글을 쓰면서 

질문자께서 어떤 것을 위해서 저 부분이 필요한지 모른 상태로 만들고 요청하신 부분만 만들었습니다. 

어떻게 사용 될진 알 수 없지만 잘 사용하셨으면 좋겠네요. 

요약하자면 정렬하고 안보이게하고 조건을 주면 완성 됩니다. 

감사합니다. 

 

질문 있으시면 카톡 주세요~ 

https://open.kakao.com/o/sXWAggfg

 

엑셀 알려드려요

 

open.kakao.com

혹시라도 엑셀이 궁금하시면 오픈 카톡주세요. 
(* 단지 카톡이 왔더라도 답변은 빠를수도 늦을수도 있습니다. 
빠르면 실시간, 늦이면 1일 정도 소요될 수도 있어요. 너무 많으면 7일도 소요될 수 있습니다. 그리고 문의하신 내용은 글로
 작성 할 것 입니다. *)
 
위 내용 참고 하시고 문의 주세요.
 

반응형

댓글