15 행마다 수많은 행에 걸쳐 하나로 결합


1

45000 행 (단일 열)으로 데이터가 퍼져 있습니다. 15 행마다 하나의 행으로 결합해야합니다. 결국 15 행마다 데이터가 결합 된 3000 행이 필요합니다.

에서:

row 1 
row 2
row 3
row 4
etc...

으로:

row 1  (rows 1-15)
row 2  (rows 16-30)
row 3  (rows 31-45)
row 4  (rows 46-60)
etc...

15 행을 하나로 결합하는 방법을 알고 있지만 45000 행에서이를 반복하는 모듈을 만드는 방법을 모르겠습니다.

지금까지 CONCATENATE 함수를 사용하여 여러 행 (15)을 단일 행으로 결합했습니다. 그러나 너무 많은 행 (45000)이 있으며 모든 행에서 자동 으로이 작업을 수행하는 방법을 찾아야합니다. VBA를 사용하여 매크로를 만들어야한다고 생각합니다.

행의 데이터는 숫자와 문자열의 조합이며 처음 몇 행의 예입니다.

20181102-112745254375,$IIGLL,4342.3344,N,01548.0639,E,102745.00,A,A*7E
20181102-112745306452,$IIHDG,264.0,,,3.90,E*18
20181102-112745342864,$IIHDT,267.9,T*28
20181102-112745385244,$IIHDM,264.0,M*22

당신이 무엇을 시도했는지 보여 주시겠습니까? 이 질문은 공식 질문입니까 아니면 VBA 질문입니까? 어떻게 병합 / 연결하고 싶습니까? 데이터는 모두 문자열입니까, 숫자 및 날짜입니까?
dmb

CONCATENATE를 사용 했으므로 ROW 함수로 조작 된 INDEX * 15 +1, +2, +3을 +15까지 전달하여 15 행마다 하나의 전염성있는 방식으로 연결할 수 있습니다.
patkim

고마워. 그 기능을 사용하는 방법을 모른다는 것이 무슨 뜻인지 이해합니다. 사용해야하는 공식을 지정할 수 있습니까?
Jan Winkler

답변:


1

내가 가장 잘 이해 한 것을 바탕으로 CONCATENATE를 사용하지만 INDEX & ROW와 함께 데이터를 조작하는 솔루션을 제안합니다.

샘플 데이터는 A1 이하로 시작하는 A 열에 있습니다. 이 시작 셀이 다르면 수식에서 약간의 조작이 필요합니다.

수식이 길어지고 다소 단축하기 위해 Name Manager에서 Name1이라는 Name을 사용했습니다.

이름 관리자로 이동하여 수식을 다음과 같이 이름 1이라는 새 이름을 만듭니다.

=(ROW()-1)*15

여기에 이미지 설명을 입력하십시오

이제 B1에서 다음 공식을 넣으십시오.

=CONCATENATE(INDEX($A:$A,Name1+1),INDEX($A:$A,Name1+2),INDEX($A:$A,Name1+3),INDEX($A:$A,Name1+4),INDEX($A:$A,Name1+5),INDEX($A:$A,Name1+6),INDEX($A:$A,Name1+7),INDEX($A:$A,Name1+8),INDEX($A:$A,Name1+9),INDEX($A:$A,Name1+10),INDEX($A:$A,Name1+11),INDEX($A:$A,Name1+12),INDEX($A:$A,Name1+13),INDEX($A:$A,Name1+14),INDEX($A:$A,Name1+15))

원하는 행까지 아래로 드래그하십시오.

이제 첫 번째 셀을 시작하는 열 A의 15 행마다 셀 B1, B2 등에서 서로 아래로 쌓인 단일 셀로 연결됩니다.


정말 고맙습니다! 잘 작동한다. 방금 ";"을 ";"로 바꿔야했습니다. 다른 지역으로 인해 수식에 있다고 생각합니다.
Jan Winkler

예, Windows에서 해당 지역의 목록 구분 기호는 다음과 같습니다. 대신
patkim
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.