用ATL写Excel的插件, 操作Excel表格, 遇到问题, 高手进!

 所属目录:Java   |   类型:技术问答   |   时间:2007-05-21
 问题:

准备用vc写一个excel的插件,   给excel添加一个工具条,   点击工具条的按钮执行一定的操作.  
   
  我创建了一个atl/com工程,   #import了   mso.dll   跟   excel.exe,   按照网上的例子添加一通,   现在已经成功创建了工具条跟按钮,   但在要操作excel表格的时候遇到了问题,   要怎么样才能更改表格里面的内容?  
   
  函数大概就是下面的内容,   不知道应该怎么写下去.  
   
   
  ccomptr<excel::_worksheet>   spactivesheet;  
  hresult hr   =   m_spapp->get_activesheet((idispatch**)&spactivesheet);  
   
  ccomvariant   c1("a1");  
  ccomvariant   c2("a1");  
  if   (failed(hr))  
  return;  
   
  ccomptr<excel::range>   range;  
  spactivesheet->get_range(c1,   c2,   &range);  
   
  不知道是不是应该用range对象操作表格,   如果是的话,   range对象都有那些方法?   为什么在   excel.tlb文件中,   struct   range的定义是空的呢?  
   
  高手救命?   自己都研究好几天了,   也没找到办法!!  
 

· 网友精彩回答:

发表者:orbit

看看教本例子:  
  目的   使用的代码    
  将   sheet1   中单元格   a1   的值设置为   100   worksheets("sheet1").range("a1").value   =   100  
     
  设置活动工作表中一组单元格的值   range("b2:b14").value   =   10000  
     
  设置活动工作表中单元格   b15   的公式   range("b15").formula   =   "=sum(b2:b14)"  
     
  将字体设置为粗体   range("b15").font.bold   =   true  
     
  将字体颜色设置为绿色   range("b15").font.color   =   rgb(0,   255,   0)  
     
  将对象变量设置为引用某个元格   set   rngcurrent   =   range("a1")  
     
  将对象变量设置为引用一组单元格   set   rngcurrent   =   range("a1:l1")  
     
  设置指定区域内的所有单元格的格式   range("ytdsalestotals").font.bold   =   true  
     
  将某个对象变量设置为指定区域   set   rngcurrent   =   range("novemberreturns")  
     
  将对象变量设置为表示   employees   工作表中所有已用的单元格   set   rngcurrent   =   worksheets("employees").usedrange  
     
  将对象变量设置为表示活动单元格周围的相关单元格组   set   rngcurrent   =   activecell.currentregion  
     
  将对象变量设置为表示活动工作表中的前三列   set   rngcurrent   =   range("a:c")  
     
  将对象变量设置为表示活动工作表中的   3、5、7   和   9   行   set   rngcurrent   =   range("3:3,   5:5,   7:7,   9:9")  
     
  将对象变量设置为表示活动工作表中多个非相邻单元格组   set   rngcurrent   =   range("a1:c4,   d6:g12,   i2:l7")  
     
  删除指定单元格组   (b5:b10)   中所有单元格的内容,同时保留格式不被改动   range("b5",   "b10").clearcontents  
     
 

发表者:goodboyws

http://download.microsoft.com/download/office2000dev/sample/2/win98/en-us/offautmn.exe  
  这里面有例子

.
处理 SSI 文件时出错
© 2006-2008 All Rights Reserved