Javascript HTML-->Excel文件。是否在下载的文件中包含vba代码?

Javascript HTML-->Excel文件。是否在下载的文件中包含vba代码?,javascript,jquery,html,excel,Javascript,Jquery,Html,Excel,我目前有一段代码,可以将HTML正文中的表导出到一个excel文件中 $(document).ready(function() { $("#btnExport").click(function(e) { //getting values of current time for generating the file name var dt = new Date(); var day = dt.getDate(); var month = dt.getMon

我目前有一段代码,可以将HTML正文中的表导出到一个excel文件中

$(document).ready(function() {
    $("#btnExport").click(function(e) {
    //getting values of current time for generating the file name
    var dt = new Date();
    var day = dt.getDate();
    var month = dt.getMonth() + 1;
    var year = dt.getFullYear();
    var hour = dt.getHours();
    var mins = dt.getMinutes();
    var postfix = day + "." + month + "." + year + "_" + hour + "." + mins;
    //creating a temporary HTML link element (they support setting file names)
    var a = document.createElement('a');
    //getting data from our div that contains the HTML table
    var data_type = 'data:application/vnd.ms-excel';
    var table_div = document.getElementsByClassName("dvData");
    var table_html = table_div[0].outerHTML.replace(/ /g, '%20');
    var table_html2 = table_div[1].outerHTML.replace(/ /g, '%20');
    var table_html3 = table_div[2].outerHTML.replace(/ /g, '%20');
    a.href = data_type + ', ' + table_html + "<br></br>" + table_html2 + "<br></br>" + table_html3;
    //setting the file name
    a.download = 'exported_table_' + postfix + '.xls';
    //triggering the function
    a.click();
    //just in case, prevent default behaviour
    e.preventDefault();
});
});
</script>
当excel文件打开时,我希望它有一些vba代码,当用户打开下载的文件时自动运行


这可能吗?如果是这样,我如何将vba代码嵌入到我的代码导出的excel文件中?

我认为用HTML字符串生成excel文件的方式无法做到这一点。您可以改为使用Office,在我的Excel版本中,除非使用XLSM扩展名保存文件,否则不会启用宏。除了@Tim的优秀point Office 2007和更高版本要求XLSM扩展名和格式之外,您的用户还需要在Excel Office 95/97及更高版本中设置宏安全设置,以便能够运行未签名的宏,这可能会导致灾难。您最好制作一个数字签名的外接程序,然后每个人都可以安装。