簡體   English   中英

HTML 轉 Excel / 插入注釋

[英]HTML to Excel / Insert Comments

是否可以從 HTML 文件對 Excel 單元格插入注釋? 無法從互聯網上找到信息。

這是我的代碼,實際上是完美地將 html 表導出為 excel 表,但我也想導出評論,但還沒有成功。 我的實際代碼:

 <!DOCTYPE html> <html> <head> <title>HTML Form Data to Excel</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> <script type="text/javascript"> function fnExcelReport() { $("th:hidden,td:hidden").remove(); var tab_text = '<html xmlns:x="urn:schemas-microsoft-com:office:excel">'; tab_text = tab_text + '<head><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet>'; tab_text = tab_text + '<x:Name>Test Sheet</x:Name>'; tab_text = tab_text + '<x:WorksheetOptions><x:Panes></x:Panes></x:WorksheetOptions></x:ExcelWorksheet>'; tab_text = tab_text + '</x:ExcelWorksheets></x:ExcelWorkbook></xml></head><body>'; tab_text = tab_text + "<table border='1px'>"; tab_text = tab_text + $('#myTable').html(); tab_text = tab_text + '</table></body></html>'; var data_type = 'data:application/vnd.ms-excel'; var ua = window.navigator.userAgent; var msie = ua.indexOf("MSIE "); if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\\:11\\./)) { if (window.navigator.msSaveBlob) { var blob = new Blob([tab_text], { type: "application/csv;charset=utf-8;" }); navigator.msSaveBlob(blob, 'Report.xls'); } } else { $('#test').attr('href', data_type + ', ' + encodeURIComponent(tab_text)); $('#test').attr('download', 'Test file.xls'); } }; </script> <link rel="stylesheet" href="styles/main.css"/> </head> <body> <a href="#" id="test" onClick="fnExcelReport();">download</a> <table id="myTable"> <tr> <td><b>Name</b> </td> <td><b>Age</b> </td> </tr> <tr> <td style="background-color: red;">Tester1</td> <td>30</td> </tr> <tr> <td>Tester2</td> <td>29</td> </tr> <tr> <td>Tester3</td> <td>17</td> <td id="comentA" class="commentA">something</td> </tr> </table> </body> </html>

導出到 Excel 后,您可以使用 Excel JS API 插入注釋:

await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getItem("Comments");

    // Note that an InvalidArgument error will be thrown if multiple cells passed to `comment.add`.
    sheet.comments.add("A2", "TODO: add data.");
    await context.sync();
});

該文檔可以在https://docs.microsoft.com/en-us/office/dev/add-ins/excel/excel-add-ins-comments找到

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM