数据表如图1,2,3行所示,把第2行复制3次(d次),第3行复制4次(d次)
然后只粘贴abc列的数据(6,7,8有d行相同的数据,但是不包括d列的数据)
根据上面的数据,把复制之后的数据写入新的表,用java如何操作呀?
有40多个表,每个表中都有200多条数据,数据量很大,所有要用程序写,
还有一个问题就是一个表中复制之后的数据量可能超过Excel20007的最大行数(1048576行),如何自动拆成多个表呢?比如前50个数据在一个表,51-100在第二个表,101-200在第三个表......
注意!!!
复制之后的数据是写到Excel表中,并不是数据库中,java初学。。不太会
알겠습니다. 읽기 쉽게 문제를 먼저 정리하겠습니다...
엑셀 표에는 a, b, c, d 총 4개의 열이 있습니다. 저장된 데이터이고 열 d는 이 데이터 행이 복사되는 횟수입니다.
그리고 말씀하시는 테이블은 데이터베이스 테이블인가요, 아니면 엑셀 테이블인가요?
업데이트
오피스 문서 작업에 특별히 사용되는 도구 라이브러리
Apache POI
를 살펴보실 수 있습니다.일회용이라면 크게 생각할 필요가 없습니다.
POI
을 이용해 엑셀 문서를 메모리에 읽어온 후 프로그램에 데이터를 복사한 후 복사한 데이터를 분할합니다. 그리고 엑셀표에 적어보세요.js에 대해 조금 알고 계시다면 node-xlsx(nodejs에 따라 다름)를 사용하여 이 요구 사항을 달성하는 것이 좋습니다. 이는 java를 작성하는 것보다 빠릅니다. 코드 줄 수는 50줄 이내여야 합니다.
업데이트 2
저는 Java를 작성하고 싶지 않기 때문에 nodejs 코드 일부만 작성할 수 있습니다...
으아악사용방법
nodejs를 설치하세요.
cmd 창을 열고
npm --registry https://registry.npm.taobao.org install -g nrm
;달려
nrm use taobao
;위 코드를
process.js
로 저장하고 해당 파일을 Excel 소스 파일과 동일한 디렉터리에 넣습니다.cmd 창에 해당 디렉터리를 입력하고
npm i node-xlsx
;node process.js source.xlsx dest.xlsx
실행(두 번째 매개변수는 Excel 소스 파일 이름이고, 세 번째 매개변수는 저장하려는 Excel 파일 이름입니다.)도구: Java POI는 Excel을 작동하고 비즈니스 규칙에 따라 각 행과 열을 스캔합니다. 한 시트를 배치할 수 없기 때문에 여러 저장소를 배치하고 각 데이터 행을 복사하여 Excel의 새 시트에 배치합니다. 넘치지 않게