首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

!Excel关于sheet的操作,sheet来回切换

2012-09-16 
求助!Excel关于sheet的操作,sheet来回切换一个工作簿,现在里面只有一个sheet1,里面有很多数据,现在要从she

求助!Excel关于sheet的操作,sheet来回切换
一个工作簿,现在里面只有一个sheet1,里面有很多数据,现在要从sheet1里取数据,尾数为2的放在sheet2,尾数为3的放在sheet3中......;应该怎么弄?
主要是 在不同sheet之间来回切换的问题;
我做的时候经常 数据无法写到sheet2中 只能写到sheet1上,这是怎么回事?我使用的是 
  sht=Unassigned;
  int nShtConut=wb.OlePropertyGet("Sheets").OlePropertyGet("Count");
  wb= ex.OlePropertyGet("ActiveWorkBook");
  sht=wb.OlePropertyGet("ActiveSheet");
  Variant sht=(ex.OlePropertyGet("WorkSheets")).OleFunction("Add");
  wb.OlePropertyGet("sheets",nShtConut+1).OleProcedure("Select");
这样来更换 sheet ;之前一个程序 用这段代码还挺好的,但是这次使用的时候无法在sheet之间来回切换;
求各位大神帮帮忙

[解决办法]
http://topic.csdn.net/t/20030619/11/1933557.html

给你翻到了个妖哥大侠的帖子
Workbook1.PG( "Sheets ", "Sheet名称 ").PR( "Select ");
貌似 Sheet名称 你的这个参数有问题啊,应该是sheet名称,不仅仅是序号 1 2 3 之类
[解决办法]
OLE专业户来也!!!

(ex.OlePropertyGet("WorkSheets")).OleFunction("Add");
这一句,并不能保证新添加的Sheet就在最后,所以下面的代码
wb.OlePropertyGet("sheets",nShtConut+1)
获取到的不一定是你期望的那个工作表。

热点排行