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

Excel파일을 import 한 뒤 병합된 cell에 값 붙여 넣기 > Q&A | 토론

본문 바로가기

ReactJS Excel파일을 import 한 뒤 병합된 cell에 값 붙여 넣기

페이지 정보

작성자 김진현 작성일 2022-04-06 16:01 조회 1,734회 댓글 0건
제품 버전 : V15.0.5

본문

1. 병합된 Cell에 붙여 넣기


1. Excel File을 import 합니다.


2. Excel File에는 병합으로 만들어진 Cell이 존재합니다.


3. 병합된 Cell에 값을 코드로 넣고 싶습니다.


3번을 진행하고 싶은데 cell이 병합되어 있어서 그런지 기존 일반 cell에 넣는 setValue 메서드가 작동하지 않습니다.

어떻게 할 수 있을까요.


--------------------------


2. 병합된 Cell의 좌표를 읽는 방법


1. Excel File을 import 합니다.


2. Excel File에는 병합으로 만들어진 Cell이 존재합니다.


3. 병합된 Cell의 좌표 값을 얻고 싶습니다.


3번을 진행하고 싶은데 cell이 병합되어 있어서 그런지 기존 일반 cell에서 사용하던 코드가 작동하지 않습니다.

어떻게 해야 병합된 Cell의 좌표값을 알 수 있을까요.

sheet.bind(GC.Spread.Sheets.Events.SelectionChanged, (eventName, args) => {
      const { row: rowIndex, col: columnIndex } = args.newSelections[0];
      const value = sheet.getValue(rowIndex, columnIndex);
      setSelectedRow(rowIndex);
      setSelectedColumn(columnIndex);
      setSelectedValue(value);
    });
  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

1 답변

ReactJS Re: Excel파일을 import 한 뒤 병합된 cell에 값 붙여 넣기

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

페이지 정보

작성자 GCK루시 작성일 2022-04-08 09:59 댓글 0건

본문

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


문의 주신 내용에 답변 드립니다.

1. 병합된 Cell에 붙여 넣기

=> 문의 주신 내용이 병합된 셀을 가진 Excel 파일을 import 후, 해당 셀에 setValue를 이용하여 값을 넣고 싶으시다는 말씀이 맞으실까요? 맞으시다면 엑셀 파일을 가져오는 동안 fromJSON에서 로딩 상태를 가져올 수 있는 incrementalLoading의 loading 콜백에서 시트에 접근하여 해당 영역에서 병합된 셀에 인덱스에 setValue를 설정해보시기 바랍니다. 아래 코드를 참고하여 주시기 바랍니다.

loadExcel(e) {
        (...)
    excelIo.open(excelFile, function (json) {
       let workbookObj = json;
       if (incrementalEle.checked) {
         spread.fromJSON(workbookObj, {
         incrementalLoading: {
         loading: function (progress, args) {
         //progress = progress * 100;
         //loadingStatus.value = progress;           
         args.sheet.setValue(1,2,"viewport", GC.Spread.Sheets.SheetArea.viewport);                       
        },
(...)
    }


2. 병합된 Cell의 좌표를 읽는 방법

=> 해당 기능을 구현하기 위해서 1번 답변의 loading 콜백에서 지정된 시트 영역에서 지정된 범위의 span을 가져오는 getSpans 메서드를 통해 확인하실 수 있습니다. 아래 코드를 참고하여 주시기 바랍니다.

loadExcel(e) {
    (...)
    // here is excel IO API
    excelIo.open(excelFile, function (json) {
      let workbookObj = json;
       if (incrementalEle.checked) {
         spread.fromJSON(workbookObj, {
         incrementalLoading: {
           loading: function (progress, args) {
              (...)
               var spans= args.sheet.getSpans();      
               for(var i = 0; i < spans.length; i++){
                console.log(spans[i].row);
                console.log(spans[i].rowCount);
                console.log(spans[i].col);
                console.log(spans[i].colCount);
               }
            },
    (...)
    }


코드들은 Excel IO 데모 기준으로 작성된 코드이오니 필요 시 참고 부탁 드립니다.


- Incremental Loading : https://www.grapecity.com/spreadjs/docs/latest/online/incremental-loading.html?highlight=incrementalloading%2C

- getSpan : https://www.grapecity.com/spreadjs/docs/latest/online/SpreadJS~GC.Spread.Sheets.Worksheet~getSpans.html?highlight=getspans%2C


도움말 문서를 같이 전달 드리며 다른 궁금한 점이 생기면, 문의 주시기 바랍니다. 


감사합니다. 

그레이프시티 드림 


* 그레이프시티(GrapeCity)는 개발자를 위하여 ComponentOne(컴포넌트원), Spread(스프레드), ActiveReports(액티브리포츠), SpreadJS(스프레드JS), Wijmo(위즈모)와 같은 엑셀 스프레드시트 리포팅 그리드와 차트 등 다양한 종류의 .NET JavaScript(자바스크립트) 컴포넌트 툴을 생산하고있는 개발툴 전문 회사 입니다.

댓글목록

등록된 댓글이 없습니다.

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