クライアント側のボタンクリックイベントから次のコードがあります。Chromeでエクセルを開いています。ただし、IE では URL に追加するだけで、期待どおりに動作しません。
function generateexcel() {
var table = document.getElementById("tsttable");
var c = table.innerHTML;
var html = c.trim()
//add more symbols if needed...
while (html.indexOf('á') != -1) html = html.replace('á', 'á');
while (html.indexOf('é') != -1) html = html.replace('é', 'é');
while (html.indexOf('í') != -1) html = html.replace('í', 'í');
while (html.indexOf('ó') != -1) html = html.replace('ó', 'ó');
while (html.indexOf('ú') != -1) html = html.replace('ú', 'ú');
while (html.indexOf('º') != -1) html = html.replace('º', 'º');
window.open('data:application/vnd.ms-excel,' + escape(html));
}