! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

excel import data > Q&A | 토론

본문 바로가기

Wijmo

Q&A | 토론

ReactJS excel import data

페이지 정보

작성자 MESCIUSMAN 작성일 2023-02-09 12:25 조회 686회 댓글 0건
제품 버전 : test

본문

안녕하세요


매번 답변에 감사드립니다


excel data에 관해서 문의할 사항이 있습니다.



처음 엑셀 파일을 선택해서 임포트하면 아래와 같이 데이터 값이 출력 됩니다.



순서가 f 부터 시작하는데 a 부터 시작할수는 없는 것인지




그리고 다시 엑셀을 선택해서 임포트하면 아래와 같이 순서가 10으로 시작합니다.

계속 임포트를 하면 a1,b2 순서가 계속 바뀌더군요

새로고침 후 임포트하면 f부터 시작하는데 새로고침 없이 순서가 일정했으면 좋겠습니다

아래 그림 처럼 제가 for문을 써서 데이터값을 가져오고 있습니다.

for문 때문에 임포트할때마다 순서 값이 계속 커지는거 같은데 

값을 일정하게 뽑는 방법이 있나요?


 

  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

1 답변

ReactJS Re: excel import data

추천1 이 글을 추천하셨습니다 비추천0 채택채택

페이지 정보

작성자 GCK루시 작성일 2023-02-13 09:40 댓글 0건

본문

안녕하세요 그레이프시티입니다.


먼저, _가 붙는 속성의 경우 내부적으로 사용하기 위한 속성으로, 개발 단계에서 접근하여 사용하는 것은 요구 사항에 맞지 않으며 권장하지 않습니다. 더불어 이전에 안내 드린 것과 같이 FlexGrid에 엑셀 파일을 가져왔을 때는 FlexGrid가 바운드 모드가 아니므로 특정 속성의 값을 바로 사용할 수 없고 수동적으로 추가해주셔야 합니다. 이를 위해 onLoad 콜백함수의 첫번째 매개변수인 workbook 인스턴스를 이용하여 가져온 시트의 행을 반복하여 원하는 셀 값을 가져올 수 있습니다.


앞서 안내 드린 것보다 간단한 코드를 공유 드리오니 참고 부탁드립니다.


 const loadExcel = function () {
    let fileInput = document.getElementById('importFile');
    if (fileInput.files[0]) {
      wjcGridXlsx.FlexGridXlsxConverter.loadAsync(
        flex.current.control,
        fileInput.files[0],
        { includeColumnHeaders: true },
        (workbook) => {
          console.log(workbook);

          let rows = workbook.sheets[0].rows,
            columns = workbook.sheets[0].columns,
            data = [];
          //itreate over workbook rows and extract data from each cells
          for (let i = 0; i < rows.length; i++) {
            let obj = {};
            for (let c = 0; c < columns.length; c++) {
              obj[`${i}${c}`] = rows[i].cells[c].value;
            }
            data.push(obj);
          }

          console.log('imprted Data:', data);
        }
      );
    }
  };


다른 궁금한 점이 생기면, 문의 주시기 바랍니다.


감사합니다.

그레이프시티 드림

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.