태그 보관물: spreadsheet

spreadsheet

Excel에서 단일 행을 여러 행으로 참조 개의 행을

판매 목록이있는 워크 시트가 있습니다. 행 당 하나의 판매입니다. 이 데이터를 회계 소프트웨어로 가져 오려면 데이터를 다르게 형식화하는 별도의 워크 시트를 만들어야합니다. 첫 번째 워크 시트의 각 행은 두 번째 워크 시트에서 4 개의 행을 차지합니다.

두 번째 워크 시트에 네 개의 행을 설정하고 첫 번째 워크 시트의 첫 번째 행에 대한 모든 상대 참조를 만듭니다. 네 행의 복사본을 만들 때 셀 참조가 잘못되었습니다. 예를 들어 처음 네 행은 참조해야합니다 worksheet1!A1. 다음 네 행은 참조해야합니다 worksheet1!A2. 그러나 내가 채워서이 작업을 시도 A1:A4하면 참조 worksheet1!A5됩니다.

이 네 행을 빠르게 복제하고 올바른 참조를 갖는 방법이 필요합니다. 방법은 다음과 같습니다.

worksheet1!A1 -> worksheet2!A1
worksheet1!A1 -> worksheet2!A2
worksheet1!A1 -> worksheet2!A3
worksheet1!A1 -> worksheet2!A4
worksheet1!A2 -> worksheet2!A5
worksheet1!A2 -> worksheet2!A6
worksheet1!A2 -> worksheet2!A7
worksheet1!A2 -> worksheet2!A8

현재, 이것이 나오는 방법입니다. 세 개의 판매 행을 건너 뛴다는 것을 알 수 있습니다.

worksheet1!A1 -> worksheet2!A1
worksheet1!A1 -> worksheet2!A2
worksheet1!A1 -> worksheet2!A3
worksheet1!A1 -> worksheet2!A4
worksheet1!A5 -> worksheet2!A5
worksheet1!A5 -> worksheet2!A6
worksheet1!A5 -> worksheet2!A7
worksheet1!A5 -> worksheet2!A8

이 작업을 수행하는 매우 쉽고 확실한 방법이있을 수 있지만 Excel 기술이 제한되어 있으며 Google에서 아무것도 찾을 수 없었습니다.



답변

A1두 번째 시트 에서 시작한다고 가정하면 다음 수식 아래 열 A를 채워 원하는 결과를 얻을 수 있습니다.

=IF(INT((ROW()+3)/4)=(ROW()+3)/4,INDIRECT("worksheet1!A"&(ROW()+3)/4),"")

약간 복잡하고 워크 시트를 감사하기가 어렵지만 작업이 완료됩니다. 명확하고 따라하기 쉬운 수식이 필요한 경우 VBA가 적합합니다.


답변

솔루션이 OP 내에서 질문 내에서 답변으로 이동했습니다.


나는 그것을 할 수있는 방법을 찾을 수있었습니다. 행 번호를 4로 나눈 다음 가장 가까운 정수로 반올림합니다.

=INDIRECT("'worksheet1'!A"&ROUNDUP(ROW()/4, 0))

# My real world version looks more like this, as my rows don't actually start on row 1

=INDIRECT("'worksheet1'!A"&ROUNDUP((ROW()-1)/4, 0) + 8)

답변