2016-10-27 6 views
0

エクスポートする前にこのファイルをレイアウトしたいのですが、エクスポートする前にコードでのワードラップを修正したいと思います。いくつかの提案ライブラリ制御これは? image excel fileエクセルをカスタマイズしてレイアウトをカスタマイズする

私は幅の列を設定するalasqlを使用しようとすると、私はこのbug.Howが、これはあなたがjavascript.Have外観を使用してカスタムテンプレートを使用してExcelを作成することができますbug when using alasql lib

+0

に、ここで第二の答えは役立つかもしれない:http://stackoverflow.com/questions/21680768/export-to-xls-using-angularjsあなたの人々はGoogleでさえか? –

+0

@ Nick.McDermaid質問を更新して画像を添付しました。これまたはライブラリライブラリを修正するための提案がありますか? – John

+0

私はalasqlバグを修正する方法を知らない。それはちょうどメッセージボックスです。 –

答えて

0

を?:修正することができます受け取る:このように このhttp://jsfiddle.net/kmqz9/223/ <a id="test" href="" onclick="downloadReport();">Test.xls</a>

// Test script to generate a file from JavaScript such that MS Excel will honor non-ASCII characters.. 


testJson = [ 
{ 
    "name": "First Name", 
    "city": "City", 
    "country":" Country of Manas", 
    "birthdate": "Birth Date", 
    "amount": "Paisa Ketey" 
}, 
{ 
    "name": "Tony Peña", 
    "city": "New York", 
    "country": "United States", 
    "birthdate": "1978-03-15", 
    "amount": 42 

}, 
{ 
    "name": "Ζαλώνης Thessaloniki", 
    "city": "Athens", 
    "country": "Greece", 
    "birthdate": "1987-11-23", 
    "amount": 42 
} 
]; 

// Simple type mapping; dates can be hard 
// and I would prefer to simply use `datevalue` 
// ... you could even add the formula in here. 
testTypes = { 
    "name": "String", 
    "city": "String", 
    "country": "String", 
    "birthdate": "String", 
    "amount": "String" 
}; 

emitXmlHeader = function() { 
    return '<?xml version="1.0"?>\n' + 
      '<ss:Workbook xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">\n' + 
      '<ss:Worksheet ss:Name="Sheet1">\n' + 
      '<ss:Table>\n\n'; 
}; 

emitXmlFooter = function() { 
    return '\n</ss:Table>\n' + 
      '</ss:Worksheet>\n' + 
      '</ss:Workbook>\n'; 
}; 

jsonToSsXml = function (jsonObject) { 
    var row; 
    var col; 
    var xml; 
    var data = typeof jsonObject != "object" 
      ? JSON.parse(jsonObject) 
      : jsonObject; 

    xml = emitXmlHeader(); 

    for (row = 0; row < data.length; row++) { 
     xml += '<ss:Row>\n'; 

     for (col in data[row]) { 
      xml += ' <ss:Cell>\n'; 
      xml += ' <ss:Data ss:Type="' + testTypes[col] + '">'; 
      xml += data[row][col] + '</ss:Data>\n'; 
      xml += ' </ss:Cell>\n'; 
     } 

     xml += '</ss:Row>\n'; 
    } 

    xml += emitXmlFooter(); 
    return xml; 
}; 

console.log(jsonToSsXml(testJson)); 

function download (content, filename, contentType) { 
    if (!contentType) contentType = 'application/octet-stream'; 
    var a = document.getElementById('test'); 
    var blob = new Blob([content], { 
     'type': contentType 
    }); 
    a.href = window.URL.createObjectURL(blob); 
    a.download = filename; 
    window.navigator.msSaveOrOpenBlob(blob,filename); 
}; 

function downloadReport() 
{ 
    download(jsonToSsXml(testJson), 'test.xls',  'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); 
}; 
+0

ありがとうございます。私の質問が更新されました。 1つの列に単語を折り返したい場合は、どうすればいいですか?これをサポートするライブラリがありますか? – John

関連する問題