CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·주식한당 ·아이포니앙 ·MaClien ·방탄소년당 ·일본산당 ·자전거당 ·안드로메당 ·개발한당 ·이륜차당 ·골프당 ·걸그룹당 ·바다건너당 ·클다방 ·소셜게임한당 ·소시당 ·AI당 ·나스당 ·육아당 ·키보드당 ·어학당 ·퐁당퐁당 ·물고기당 ·노젓는당 ·냐옹이당 ·와인마신당 ·오른당 ·사과시계당 ·위스키당 ·IoT당 ·방송한당 ·PC튜닝한당 ·축구당 ·스팀한당 ·AI그림당 ·날아간당 ·3D메이킹 ·X세대당 ·ADHD당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·곰돌이당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·문명하셨당 ·클래시앙 ·콘솔한당 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·디아블로당 ·개판이당 ·동숲한당 ·날아올랑 ·전기자전거당 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·KARA당 ·꼬들한당 ·덕질한당 ·가죽당 ·레고당 ·리눅서당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·찰칵찍당 ·그림그린당 ·소풍간당 ·심는당 ·패스오브엑자일당 ·라즈베리파이당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·나혼자산당 ·스타한당 ·파도탄당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·가상화폐당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

팁과강좌

PC/모바일 [엑셀] 자동 채우기로 안되는 다른 시트의 셀 값 가져오기 (feat. 등차수열, 점화식) 13

2023-03-02 00:26:22 수정일 : 2023-03-02 00:34:38 211.♡.188.60
ㄱㅡ

먼저 이것보다 아주 쉬운 방법이 있다면 알려주세요ㅠㅠ

찾다가 도저히 안되서 제가 꼼수로 생각한 방법 이거든요...


보통, 붙여넣는 시트의 셀에 ='A시트'!A1 입력하고 복사해서 연속적인 셀에 붙여넣으면

='A시트'!A2, ='A시트'!A3, ...으로 자동으로 채워주는 편리한 기능이 있는데 이게 도움되지 않는 경우가 있습니다.


바로 참조해야 할 셀의 간격이 다른 경우입니다. 이해하기 쉽게 아래의 그림으로 설명 드리겠습니다.

 '1월 보고용'시트의 해당 일에 맞는 합계를 띄엄띄엄하게 있는 '1월 백데이터'시트에서 가져와야 하는데요.

01.png


'1월 보고용' 시트의 B2, B6, B10, B14에 각각 '1월 백데이터' 시트의 D5, D10, D15, D20값이 들어가야 한다는 거죠.


그런데 무작정 붙여넣게 된다면 아래 그림처럼 D5, D10, D15, D20값이 아닌

'1월 보고용'시트 셀 위치기준으로 D5, D9, D13, D17값이 자동으로 채워지게 됩니다.

02.png


이걸 어떻게 해야하나 싶다가

'1월 보고용'시트에서 행이 2일때, 참조 시트 행에서는 5

'1월 보고용'시트에서 행이 6일때, 참조 시트 행에서는 10

'1월 보고용'시트에서 행이 10일때, 참조 시트 행에서는 15 ....

이렇게 연속하는 두 항의 차이가 모두 일정한 등차수열이 보이니, 등차수열의 관계를 나타내는 점화식으로 풀어보자라는 생각을 하게되었습니다.

03.png

a_(4n+2)=5(n+1)에 n=(k-2)/4를 대입하면, a_k=5(k/4+1/2)로 나오게 되고 깔끔하게 정리하면

04.png

위와 같은 점화식을 얻을 수 있습니다.


이 식을 엑셀에서 참조 값 반환하는 함수 인,  INDIRECT 함수를 아래와 같이 이용해서  각 해당하는 셀값에 붙여넣습니다.

=INDIRECT("1월백데이터!D"&5*(ROW()+2)/4) 


그러면 아래와 같이 올바른 값으로 반환되는 것을 볼 수 있습니다.

05.png

이상으로 설명을 마칩니다.


p.s. 고2때 배웠던 내용을 회사에서 써먹을 줄은 꿈에도 몰랐네요ㅋㅋ

 '모로가도 서울만 가면 된다'라는 말이 정말 공감되는 하루였습니다


봐주셔서 감사합니다!

ㄱㅡ 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [13]
lipton7
IP 1.♡.116.72
03-02 2023-03-02 00:55:17
·
vf0rvendetta
IP 223.♡.216.142
03-02 2023-03-02 03:03:35 / 수정일: 2023-03-02 03:11:10
·
row()가 인상적이네요 ㅎㅎ
2, 6, 10, 14, ...인 순서의 수들만 출력하는 함수겠네요
함수일 뿐인데

뜬금없이 비주얼베이직이 생각나는
삭제 되었습니다.
버드내
IP 118.♡.4.171
03-02 2023-03-02 07:34:13 / 수정일: 2023-03-02 07:34:37
·
굉장히 좋은 방법이네요.
저는 이럴때 보통 vlookup을 씁니다. 키값을 a 열에 추가하고 끌고 오면 데이타 시트가 변경되거나 간격이 일정하지 않아도 항상 같은 결과를 가져오거든요.
요이요잉
IP 218.♡.8.247
03-02 2023-03-02 09:14:01
·
좋은거 배워갑니다^^
[Und3r9r0unD)
IP 172.♡.95.42
03-02 2023-03-02 11:43:57 / 수정일: 2023-03-02 12:31:22
·
보고용/백데이터 가 어느정도 형식이 정형화 되어있다면,
Index/match 를 같이 쓰시면 됩니다.
말씀하신 수열도 정형화 된 것이니 쓰셨겠죠?

예를 들면, 보고용 B2는
=INDEX(‘1월 백데이터’!$A:$D,MATCH(A1,‘1월 백데이터’!$A:$A,0)+4,4)

Index가 (array, row, col) 순서이고
Match로 A컬럼의 날짜를 찾아서 row 에 +4를 하고,
Col은 합계 컬럼이 D이니, 4로 하면 됩니다.


P.s1 어제 침대에서 봐서, 확인차 회사에서 월급 루팡하며 해봤네요^^

P.s2 근데 저라면, 나중에 혹시 실수가 생길 수 있으므로 백데이터의 합계 앞 a컬럼을 날짜로 채워놓고 칸을 줄여놓을 것 같습니다. 그런뒤에 vlookup을 쓰죠..
나중에 정형이 흐트러지거나, 혹시나 cut-paste로 인해서 함수가 망가지면, 보고서 데이터가 제대로 안나올테니, 최대한 적은 오류가 나도록 할 것 같습니다..
ㄱㅡ
IP 211.♡.195.187
03-02 2023-03-02 15:27:20
·
@[Und3r9r0unD)님 답변 감사합니다!!
kylon
IP 39.♡.185.130
03-02 2023-03-02 14:16:09
·
오른쪽 캡쳐 백데이터를 진짜 로데이터 처럼 만들면 훨씬 쉽게 가능 합니다.
ㄱㅡ
IP 211.♡.195.187
03-02 2023-03-02 15:26:25
·
@kylon님 아예 raw data로 만드는 것도 하나의 방법이군요 감사합니다!
Myayu
IP 112.♡.32.181
03-02 2023-03-02 14:50:17 / 수정일: 2023-03-03 14:33:45
·
오피스 365용으로 수식 한번 만들어봤습니다. =ㅅ=

=LET(range1,'1월 백데이터'!A1:A100,range2,'1월 백데이터'!D1:D100,space,3,
de,TEXT(range1,"yyyy-mm-dd"),sparr,LAMBDA(txt,MAKEARRAY(space,1,LAMBDA(r,c,IF(r=1,txt,"")))),rcol1,VSTACK(DROP(REDUCE("",FILTER(de,IFERROR(DATEVALUE(de),0)>30000),LAMBDA(a,c,VSTACK(a,c,sparr("합계")))),1),""),rcol2,REDUCE("",FILTER(range2,range1="합계"),LAMBDA(a,c,VSTACK(a,c,sparr("")))),HSTACK(rcol1,rcol2))

원본데이터가 일정한 간격으로 있지 않고 불규칙하게 있어도, 알아서 값을 찾아오는 수식입니다.

입력을 임의로 100줄까지만 잡았는데, 입력 범위를 더 늘릴수도 있고..
space 3 설정한 것도, 더 늘리면 출력 간격 늘어나요.
날짜 기준은 약 82년 이상인 숫자 데이터로 잡았고(3만), range1에서 합계가 적혀있는 셀의 range2값을 가져옵니다.


근데 원본 데이터는 본문처럼 한 레코드를 여러줄로 저장하지 말고, 되도록이면, row 한줄마다 레코드 하나씩 깔끔하게 넣는게 좋아요.
ㄱㅡ
IP 211.♡.195.187
03-02 2023-03-02 15:24:36
·
@Myayu님 let함수랑 lambda를 쓰고싶은데 버전이 낮아서 사용불가네요ㅠㅠㅠㅠ 솔직히 레코드 위치를 싹다 바꾸고 싶은데 저만 사용하는 레코드가 아니라서 참고 하는 중입니다 ㅠㅠ
상도동멍멍이
IP 210.♡.88.240
03-02 2023-03-02 16:53:50 / 수정일: 2023-03-02 17:01:21
·
비슷하게... 꼼수를 써봤습니다.

1. '1월 백데이터 시트' A열에 행을 추가합니다.
2. 새롭게 추가된 A행 기준으로, A5에 B1(기존 A1셀)의 날짜를 참조시킵니다.
3. A10, A15셀에 A5의 참조된 수식을 복붙 합니다.(A5, A10, A15셀에 각각의 날짜가 참조됨)
4. '1월 보고용' 시트 B2셀에 '=VLOOKUP(A1, '1월 백데이터'!A:E, 5, FALSE)'수식을 입력합니다.
5. 나머지 합계 셀에 위의 수식을 복붙 합니다.

1월 백데이터 시트에 행을 하나 추가하긴 하지만 복잡한 함수 없이 가능합니다.
A행 추가한건...숨기기로 처리하면 깔끔하지 않나유?
상도동멍멍이
IP 210.♡.88.240
03-02 2023-03-02 17:05:45
·
앗 이미 Und3r9r0unD님이 동일한 답변 주셨네유 ㅠㅠ
삭제 되었습니다.
파ㅇ란하늘
IP 118.♡.97.73
03-26 2023-03-26 09:02:55
·
좋은 정보 감사합니다
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.