Я сделал довольно глубокий поиск по этой проблеме без везения. Похоже, что за последние пару дней вывод XLS из HTML прекратил работу над многими старыми (читай: классическими ASP) системами, которые я поддерживаю. Я смог воспроизвести это на нескольких серверах, несколько независимых исходных кодов от Office 2010 до Office 2016. Я просмотрел все, что я могу думать без успеха, поэтому мне интересно узнать, есть ли что-то, что я мог бы игнорировать. Я начинаю думать, что это может быть плохое обновление Office, которое является виновником.
Пример того, что работает и работает много лет:
<%
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "Content-Disposition", "attachment;filename=TestExcel.xls"
%>
<html>
<body>
<table>
<thead>
<tr>
<th>column 1 header</th>
<th>column 2 header</th>
</tr>
</thead>
<tbody>
<tr>
<td>column 1 value</td>
<td>column 2 value</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>Footer 1</td>
<td>Footer 2</td>
</tr>
</tfoot>
</table>
</body>
</html>
Любопытно, что файл XLS фактически создан, но когда он открывается, открывается Excel, но не файл.
Еще более любопытно, что при открытии файла XLS с помощью некоторого текстового редактора (например, блокнот) и просто File- > Save As открывается без проблем.