2016-06-07 2 views
8

मैं एक्सेल कॉलम पर फ़िल्टर जोड़ना चाहता हूं जो जेएस-एक्सएलएसएक्स जावास्क्रिप्ट प्लगइन का उपयोग कर डेटा की सरणी से बनाया गया है लेकिन मुझे टेबल कॉलम में फ़िल्टर जोड़ने का कोई तरीका नहीं मिला ।जेएस-एक्सएलएसएक्स प्लगइन का उपयोग करके उत्पन्न एक्सेल में फ़िल्टर कैसे जोड़ें

कृपया मेरी मदद किसी को भी कैसे एक्सेल

में स्तंभों को फ़िल्टर जोड़ने के लिए जानता है कि मैं कार्यपत्रक वस्तु

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; 
    } 

बनाने के लिए इस कोड लिखा है और सरणी में अपने डेटा bellow

[["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

मुझे जेएस-एक्सएलएसएक्स के साथ कोई अनुभव नहीं है, लेकिन क्या आपके पास वीबीए कोड कॉल करने का विकल्प है? इस मामले में आप रेंज.ऑटोफिल्टर विधि का उपयोग कर सकते हैं। – Carrosive

+0

नहीं, मुझे केवल जावास्क्रिप्ट का उपयोग करना है और वीबीए – Shree29

उत्तर

0

आप अपने createSheet फ़ंक्शन में वापसी विवरण से पहले निम्न पंक्ति जोड़ सकते हैं।

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

आप अपनी आवश्यकता के अनुसार इन सीमाओं का विस्तार कर सकते हैं।

+0

ठीक नहीं है, मुझे कोशिश करने दें। धन्यवाद – Shree29

संबंधित मुद्दे

 संबंधित मुद्दे