Exportación de la tabla html a la función de Excel Excelentes caracteres cambiados

Tengo la siguiente función que exporta un html para sobresalir:

function generateexcel(tableid) {
  var table= document.getElementById(tableid);
  var html = table.outerHTML;
  window.open('data:application/vnd.ms-excel,' + encodeURIComponent(html));
}

Un problema es que los caracteres especiales en los datos se transforman en otros símbolos:

1º = 1ºé = à ©

¿Cómo arreglarías esto? ¿Hay algún carácter reemplazar al html para evitarlo? ¿Alguna opción de codificación?

Respuestas a la pregunta(5)

Su respuesta a la pregunta