PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2020/06/04 16:32:05
Name whoknows
Subject [질문] 엑셀 질문드립니다.

01 02 03 04 05 06 07
08 09 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28

이런 식의 raw 데이터 모음이 하나 있고
input → output
05 → 07
21 → 21
25 → 28

이런 식으로 해당 행에 데이터가 있다면 해당행의 마지막 열 데이터를 뽑아오는 함수를 만들고 싶습니다.
좋은 방법이 없을까요? 쉬울듯한데 어렵네요...

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
20/06/04 16:46
수정 아이콘
엑셀에서 찾기 함수는 배열 하나에서밖에 못 찾아서.. 행 수만큼 노가다를 하거나 vba 써야겠네요
whoknows
20/06/04 16:55
수정 아이콘
으... 그런가요 행수 노가다는 6000개가 넘어서 불가능하겠고, 결국 vba밖에 없는거군여... ㅠㅠ
20/06/04 17:01
수정 아이콘
로우 데이터 모음의 띄어쓰기를 모두 무시해도 되나요?
띄어쓰기를 모두 쉼표로 치환하고, find 함수로 찾고자 하시는 "숫자,"를 찾고, 행에 그 값이 있다면 find 값이 숫자로 나올 것이기에,
if 함수로 그에 해당하는 경우에 한해, right(2) 함수로 가장 마지막의 숫자 2개를 불러오시면 될 것 같습니다.
whoknows
20/06/04 17:05
수정 아이콘
오 그런 방법이 있겠네요. 한 번 시도해보겠습니다. 멋진 제안 감사합니다.
20/06/04 17:08
수정 아이콘
이거도 결국 행 개수만큼의 함수를 써야 해서 행이 많은 경우라면 힘들지 않을까요?
whoknows
20/06/04 17:19
수정 아이콘
concatenate함수로 합쳐서 찾으면 찾아질줄 알았는데 이것도 안되네요 크크.
김곤잘레스
20/06/04 17:14
수정 아이콘
IFS함수로 떡칠하면 되긴하지 않나요? 붙여넣은 데이터와 같이 한행에 7개 항목이라면,

=IFS(A1=$K$6,G1,B1=$K$6,G1,C1=$K$6,G1,D1=$K$6,G1,E1=$K$6,G1,F1=$K$6,G1, A2=$K$6,G2,B2=$K$6,G2,C2=$K$6,G2,D2=$K$6,G2,E2=$K$6,G2,F2=$K$6,G2,
A3=$K$6,G3,B3=$K$6,G3,C3=$K$6,G3,D3=$K$6,G3,E3=$K$6,G3,F3=$K$6,G3,
A4=$K$6,G4,B4=$K$6,G4,C4=$K$6,G4,D4=$K$6,G4,E4=$K$6,G4,F4=$K$6,G4,
........
A6000=$K$6,G6000,B6000=$K$6,G6000,C6000=$K$6,G6000,D6000=$K$6,G6000,E6000=$K$6,G6000,F6000=$K$6,G6000,
)
이런식으로요 찾으려는 값은
K6셀에 넣고요.
whoknows
20/06/04 17:21
수정 아이콘
일단 엑셀이 2013이라 ifs가 없습니다.... 함수 길이가 정말 길어지겠군여. ㅠㅠ
20/06/04 17:18
수정 아이콘
행과 열 둘 중 하나만이라도 개수가 작다면 할만 할 것 같은데요.
행 개수가 6000개라 하셨는데 열 개수가 적으면 아래처럼 하면 될 것 같네요.
(편의상 열을 abc 3개 행을 6000개로 a1:c6000으로 했습니다 찾는 값이 있는 셀은 d1)
=sum(iferror(index(c1:c6000,match(d1,a1:a6000,0)),0),iferror(index(c1:c6000,match(d1,b1:b6000,0)),0),iferror(index(c1:c6000,match(d1,c1:c6000,0)),0))

각 열에 대해 match로 찾고 있으면 해당 행 번호를 index에 넣어 원하는 값을 찾습니다. 없어서 에러가 뜨면 0을 출력하고, 각 열에 대해 모두 더하면 되겠네요

다만 열도 많다면 엄청난 노가다를..
whoknows
20/06/04 17:22
수정 아이콘
오 열은 다섯개라 해볼만할듯 합니다. 새로운 제안 감사합니다. 우왕.
20/06/04 17:29
수정 아이콘
혹시 데이터가 숫자가 아니라 텍스트라면 sum 대신 concatenate, 0 대신 ""를 쓰시면 되겠습니다!
whoknows
20/06/04 17:59
수정 아이콘
어 근데 이렇게 하면 마지막 값이 아니라 값이 있는지만 찾아지지 않나요. 하고보니 ㅠㅠ;
20/06/04 18:26
수정 아이콘
음 해보고 돼서 올린건데... 뭐가 문제였을까요
놀고먹고자고
20/06/04 17:38
수정 아이콘
(수정됨) 혹시 해결 하셨나요?
심심해서 vba로 만들어 봤는데 메일보내주시면 파일을 메일로 보내드릴게요
각 셀에 들어가는 값이 숫자만 들어간다고 가정했습니다.
whoknows
20/06/04 17:47
수정 아이콘
말씀만으로도 정말 감사합니다. ㅠㅠ
놀고먹고자고
20/06/04 17:49
수정 아이콘
해결하셨나보군요. 알겠습니다.
회색사과
20/06/04 18:10
수정 아이콘
Gba 안쓰고도 될 것 같습니다.

https://exceljet.net/formula/get-location-of-value-in-2d-array

요거 참고하시면..

테이블에서 원하는 값의 위치를 찾을 수 있습니다.
몇 번째 행인지만 찾으면 그 행 끝값을 보시면 될 것 같습니다.
20/06/04 18:27
수정 아이콘
오 이런 방법이..
20/06/04 19:05
수정 아이콘
=INDEX($G:$G,SMALL(IF(($A:$A=5)+($B:$B=5)+($C:$C=5)+($D:$D=5)+($E:$E=5)+($F:$F=5),ROW($A:$A)-ROW($A$1)+1),1))
첫번째 예시로 든 input 값 5로 만들었습니다. output은 7로 나옵니다.
5의 값에 변수를 넣어 사용하시면 됩니다.
배열수식이라 입력하실때는 ctrl+shift+enter 함께 입력하세요.
whoknows
20/06/04 21:20
수정 아이콘
답변 달아주신 분들 모두 감사합니다. 퇴근하느라 답이 늦었네요. 내일 여러가지 방법으로 다시 해보고 답 다시 달겠습니다. 정말 감사해요!
whoknows
20/06/05 09:28
수정 아이콘
laafaan님 방식으로 아침에 다시 해보니 잘 됩니다. 맑은 정신이 필요했네요... 회색사과님이랑 히힛님 말씀도 감사해요, 그 방법도 될 것 같은데 각각 다시 해보고 또 댓글 달겠습니다. 인덱스함수의 세계는 넓고도 깊네요.
whoknows
20/06/05 09:39
수정 아이콘
회색사과님 방식도 잘 됩니다... 많이 배우네요. 히힛님 써주신 방식은 제가 이해를 못 해서 아직 못 쓰고 있습니다 천천히 봐볼게요.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
147862 [질문] 울산지역 치과추천 부탁드립니다 임플란트 [3] 밥잘먹는남자4298 20/08/24 4298
147861 [질문] 마사지건을 구입하려합니다. [4] 조국4681 20/08/24 4681
147860 [질문] 샌드위치 맛집 있을까요? [15] 피를마시는새4621 20/08/24 4621
147859 [질문] 물질에 힘이 가해졌을 때, 물질이 변형될지는 어떻게 예측하나요? [12] norrell4771 20/08/24 4771
147858 [질문] 국세청에서 종합소득세가 너무 많이 나왔습니다. [8] cs5808 20/08/24 5808
147857 [질문] 컴부품 현금 거래 믿을만 한가요? [4] 가라한4877 20/08/24 4877
147856 [질문] 축구에서 이런 슛은 의도된 건가요? [6] 삭제됨5873 20/08/24 5873
147855 [질문] 아이폰 5s 12.4.8 업데이트 괜찮을까요? [5] Love.of.Tears.5521 20/08/24 5521
147854 [질문] 마우스와 공유기 2대의 활용 질문드립니다 [4] SlaSh.5456 20/08/24 5456
147853 [질문] 채권 가격 질문입니다 [7] A205542 20/08/24 5542
147852 [질문] 닉네임 양옆에 붙는 ^의 의미는 무엇일까요? [8] 사꾸라6171 20/08/24 6171
147851 [질문] 블루라이트 차단 안경의 효과가 궁금합니다. [14] 블랙숄즈5054 20/08/24 5054
147850 [질문] 가디언테일즈 질문드립니다. [4] 김카리3644 20/08/24 3644
147849 [질문] 가디언 테일즈 캐릭터 문의 [11] 호아킨4573 20/08/24 4573
147848 [질문] 노래노래 열매 능력자분들에게 질문 드립니다. [2] 가브라멜렉4523 20/08/24 4523
147847 [질문] 제주도에 물건을 보내야하는데 퀵으로 보내는 게 나을까요? [1] 타는쓰레기4492 20/08/24 4492
147846 [질문] 액정 망가진 휴대폰을 모니터에 연결해서 사용가능한지요? [6] APONO5177 20/08/24 5177
147845 [질문] 앱코 K2000 갈축같은 저렴이 키보드 추천부탁드립니다 [3] 회전목마5320 20/08/24 5320
147844 [질문] 아반떼 배터리 분리하는법 [4] 육돌이4956 20/08/23 4956
147843 [질문] 코로나 자비검사는 어떻게 받나요? [7] 김곤잘레스5776 20/08/23 5776
147842 [질문] 아이폰 11 구매해도 될까요 ? [14] -Aka5273 20/08/23 5273
147841 [질문] 택배 송장을 그냥 버리면 무슨 문제가 있을까요? [1] CoMbI COLa5714 20/08/23 5714
147840 [질문] 혹시 중요한 시험이나 면접때 인데놀 먹어보신분 있나요? [5] 슈로더6006 20/08/23 6006
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로