怎么把DataSet中的内容一次写入EXCEL中,请看代码
Excel.Application   excel   =   new   Excel.Application(); 
 excel.Visible   =   true;   
 excel.Application.Workbooks.Open(@ "d:\abc.xls ",Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value,Missing.Value);   
 Worksheet   worksheet   =   (Worksheet)   excel.ActiveSheet; 
 Range   r   =   worksheet.get_Range( "B5 ", "D8 "); 
 r.Value2   =    "a "; 
 r.Value2   =    "b "; 
 excel.Quit(); 
 如果这样写从B5到D8都写成了b,用r.Value2   =   dt.Tables[0].Rows写也不对,请问怎么写才能一次写入.
------解决方案--------------------不管什么方法,肯定要循环转换DATASET
------解决方案--------------------Range r = worksheet.get_Range( "B5 ", "D8 "); 
 r.Value2 =  "a "; 
 r.Value2 =  "b "; 
 把r得值先付了a,然后付了b。 
 要在不同的格里写不同的值 
 需要循环写cell[x,y]
------解决方案--------------------可以将一个安全数组付值给r.Value2,我只用过VC++中的COleSafeArray,不知道C#中的数组是不是属于安全数组。   
 还有另一种思路,就是将DataSet的值生成一个格式字符串,然后将之放到剪贴板,最后在EXCEL进程中粘贴。   
 格式字符串的形式你可以自己在EXCEL中复制一个区域,然后在写字板中粘贴看看,下面是一个格式字符串的例子: 
  "第1行1列 "\t "第1行2列 "\t "第1行3列 "\t\n "第2行1列 "\t "第2行2列 "\t "第2行3列 "\t\n   
 以上是一个2行3列的矩阵其中\t单元格分隔,\n是行分隔C#中用NewLine代替