0

次のコードを使用してテーブルを Excel にエクスポートしていますが、これをサーバーにアップロードすると機能しないことに気付きました。開発マシンでのみ動作します。

function writeToExcel(tableID,columnas) 
{
  str="";

  var myTableHead = document.getElementById(tableID);
  var rowCount = myTableHead.rows.length;

  var ExcelApp = new ActiveXObject("Excel.Application");
  var ExcelSheet = new ActiveXObject("Excel.Sheet");
  ExcelSheet.Application.Visible = true;
  var celda = new Array(columnas);  
  //f = Nro Filas
  getN(tableID);
  for(f=0;f<n;f++){
    //g = Nro Columnas
    for(g=0;g<columnas;g++)
    {
        //if(g!=1 || g!= 8 || g!=10 || g!= 12){
        str= document.getElementById(tableID+f+""+g).innerHTML;
        ExcelSheet.ActiveSheet.Cells(f+1,g+1).value = str;

    }
  }
}

私は何かが欠けていますか?? 開発マシンでは、素晴らしく動作します! しかし、サーバー側ではそうではありません。これを行うより良い方法はありますか?おそらくjQueryを使用していますか?

サーバー側 Automation server can't create objectで次のようなエラーが表示され、次の行にエラーが表示されます。

  var ExcelApp = new ActiveXObject("Excel.Application");

どんな助けでも大歓迎です

4

1 に答える 1

0

Excel は、サーバー上で実行するようには設計されていません。サーバー側のテクノロジを使用してサーバー上で Excel を書き出す方法はいくつかあります。http://support.microsoft.com/kb/257757を参照してください。

あなたの場合、同じ html テーブルを応答ストリームに書き込み、MIME タイプをapplication/vnd.ms-excel

于 2013-06-10T21:21:04.457 に答える