按已有EXCEL表格式导出问题。
这是我的excel导出程序: 
  <SCRIPT   LANGUAGE= "javascript ">     
  <!--    
 function   AutomateExcel()    
 {    
 //   Start   Excel   and   get   Application   object.    
 var   oXL   =   new   ActiveXObject( "Excel.Application ");    
 //   Get   a   new   workbook.    
 var   oWB   =   oXL.Workbooks.Add();    
 var   oSheet   =   oWB.ActiveSheet;    
 var   table   =   document.all.MainTable;    
 var   hang   =   table.rows.length;    
 var   lie   =   table.rows(0).cells.length;    
 //   Add   table   headers   going   cell   by   cell.    
 for   (i=0;i <hang;i++)    
 {    
 for   (j=0;j <lie;j++)    
 {    
 oSheet.Cells(i+1,j+1).value   =   table.rows(i).cells(j).innerText;    
 }      
 }    
 oXL.Visible   =   true;    
 oXL.UserControl   =   true;    
 }    
 //-->     
  </SCRIPT>         
 因导出时某个字段的数值非常的大,达到21位例如(175130250700000496),用以上程序导出为excel表时由于excel默认将这个字段的值认为是数字,所以自动变成了175130250700000000。现在请教大家有没有办法能导出到一个我以做好模板的excel文件中。因为我只要在excel文件中把相应的列改为文本格式这样导出时就不会出现这样的情况了。
------解决方案--------------------一、使用OWC    
   什么是OWC?    
   OWC是Office Web Compent的缩写,即Microsoft的Office Web组件,它为在Web中绘制图形提供了灵活的同时也是最基本的机制。在一个intranet环境中,如果可以假设客户机上存在特定的浏览器和一些功能强大的软件(如IE5和Office 2000),那么就有能力利用Office Web组件提供一个交互式图形开发环境。这种模式下,客户端工作站将在整个任务中分担很大的比重。    
 <%Option Explicit   
 Class ExcelGen   
 Private objSpreadsheet   
 Private iColOffset      
 Private iRowOffset   
 Sub Class_Initialize()   
 Set objSpreadsheet = Server.CreateObject( "OWC.Spreadsheet ")   
 iRowOffset = 2   
 iColOffset = 2   
 End Sub      
 Sub Class_Terminate()   
 Set objSpreadsheet = Nothing  'Clean up   
 End Sub      
 Public Property Let ColumnOffset(iColOff)   
 If iColOff > 0 then   
 iColOffset = iColOff   
 Else   
 iColOffset = 2   
 End If   
 End Property      
 Public Property Let RowOffset(iRowOff)   
 If iRowOff > 0 then   
 iRowOffset = iRowOff   
 Else   
 iRowOffset = 2   
 End If   
 End Property Sub GenerateWorksheet(objRS)   
  'Populates the Excel worksheet based on a Recordset 's contents   
  'Start by displaying the titles   
 If objRS.EOF then Exit Sub   
 Dim objField, iCol, iRow   
 iCol = iColOffset   
 iRow = iRowOffset   
 For Each objField in objRS.Fields   
 objSpreadsheet.Cells(iRow, iCol).Value = objField.Name   
 objSpreadsheet.Columns(iCol).AutoFitColumns   
  '设置Excel表里的字体   
 objSpreadsheet.Cells(iRow, iCol).Font.Bold = True   
 objSpreadsheet.Cells(iRow, iCol).Font.Italic = False   
 objSpreadsheet.Cells(iRow, iCol).Font.Size = 10   
 objSpreadsheet.Cells(iRow, iCol).Halignment = 2  '居中   
 iCol = iCol + 1   
 Next  'objField   
  'Display all of the data   
 Do While Not objRS.EOF   
 iRow = iRow + 1   
 iCol = iColOffset   
 For Each objField in objRS.Fields   
 If IsNull(objField.Value) then   
 objSpreadsheet.Cells(iRow, iCol).Value =  " "   
 Else   
 objSpreadsheet.Cells(iRow, iCol).Value = objField.Value   
 objSpreadsheet.Columns(iCol).AutoFitColumns   
 objSpreadsheet.Cells(iRow, iCol).Font.Bold = False   
 objSpreadsheet.Cells(iRow, iCol).Font.It