2016-06-07 2 views
8

js-xlsx javascript 플러그인을 사용하여 데이터 배열에서 생성 된 Excel 열에 필터를 추가하고 싶지만 필터를 테이블 열에 추가 할 방법을 찾지 못했습니다. .js-xlsx 플러그인을 사용하여 생성 된 Excel에서 필터를 추가하는 방법

사람이 내가 워크 시트 개체

function createSheet(data, opts) { 
     console.log(data, opts); 
     var ws = {}; 
     var range = {s: {c: 10000000, r: 10000000}, e: {c: 0, r: 0}}; 
     for (var R = 0; R != data.length; ++R) { 
      for (var C = 0; C != data[R].length; ++C) { 
       if (range.s.r > R) range.s.r = R; 
       if (range.s.c > C) range.s.c = C; 
       if (range.e.r < R) range.e.r = R; 
       if (range.e.c < C) range.e.c = C; 
       var cell = {v: data[R][C]}; 
       if (cell.v == null) continue; 
       var cell_ref = XLSX.utils.encode_cell({c: C, r: R}); 

       console.log(cell_ref); 
       if (typeof cell.v === 'number') cell.t = 'n'; 
       else if (typeof cell.v === 'boolean') cell.t = 'b'; 
       else if (cell.v instanceof Date) { 
        cell.t = 'n'; 
        cell.z = XLSX.SSF._table[14]; 
        cell.v = dateNum(cell.v); 
       } 
       else cell.t = 's'; 

       ws[cell_ref] = cell; 
       console.log(cell); 
      } 
     } 
     console.log(range.s.c); 
     if (range.s.c < 10000000) ws['!ref'] = XLSX.utils.encode_range(range); 
     return ws; 
    } 

을 만들려면이 코드를 작성한 엑셀

에 컬럼에 필터를 추가하는 방법을 알고 배열 내 데이터가 울부 짖는 소리

[["Rank","Country","Population","% of world population","Date"],["1","India","1,273,140,000","17.6%","June 24, 2015"],["2","Pakistan","190,156,000","2.62%","June 24, 2015"],["3","Nigeria","183,523,000","2.53%","July 1, 2015"],["4","Bangladesh","126,880,000","2.19%","June 24, 2015"]] 
같은 경우 제발 도와주세요
+1

js-xlsx에 대한 경험이 없지만 VBA 코드를 호출 할 수있는 옵션이 있습니까? 이 경우 Range.AutoFilter 메서드를 사용할 수 있습니다. – Carrosive

+0

아니요. 저는 자바 스크립트 만 사용해야하며 VBA를 사용할 수 없습니다. – Shree29

답변

0

createSheet 함수의 return 문 바로 앞에 다음 행을 추가 할 수 있습니다.

ws['!autofilter']={ref:"A1:E1"}; 

요구 사항에 따라이 범위를 확장 할 수 있습니다.

+0

확인하겠습니다. 감사 – Shree29

관련 문제