CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

如何在CB中实现Excel表中Sheet页的拷贝

楼主fugel(fugel)2003-12-03 15:44:37 在 C++ Builder / 基础类 提问

各位高手帮帮忙。  
  1我自己建了一个Excel模板(只有一个Sheet页(Sheet1)),导入的数据大于一个Sheet页时,我想建立一个原来Sheet的副本(比如Sheet1(2))。怎么写啊?有它的“copy”命令吗?  
  2   如何按页脚名称将该页设为Active。(当前活动页)?  
  3   如何一次获得已存在的所有Sheet页的页脚名称?  
            谢谢!! 问题点数:0、回复次数:5Top

1 楼HenryGo(孺子牛)回复于 2003-12-03 23:44:09 得分 0

不是很懂  
  热情upTop

2 楼npuanran(找不着北了)回复于 2003-12-03 23:57:03 得分 0

关注,顶一下。Top

3 楼ccrun(老妖)(www.ccrun.com)回复于 2003-12-04 11:16:56 得分 0

给你写了一段代码。  
   
  #include   "comobj.hpp"  
  Variant   vExcelApp,   vWorkbookSrc,   vWorkbookDst,   vSheetSrc,   vSheetDst;  
  //---------------------------------------------------------------------------  
  void   __fastcall   TForm1::Button1Click(TObject   *Sender)  
  {  
          String   strXlsFileName   =   "C:\\123\\123.xls";  
          //   要copy的工作表名  
          String   strSheetSrcName     =   "Sheet1";  
          //   创建Excel对象  
          vExcelApp   =   Variant::CreateObject("Excel.Application");  
          //   Excel是否可视  
          //   vExcelApp.OlePropertySet("Visible",   true);  
          //   打开Excel文档  
          vExcelApp.OlePropertyGet("WorkBooks").OleProcedure("Open",   strXlsFileName.c_str());  
          //   取得当前活动工作表  
          vWorkbookSrc   =   vExcelApp.OlePropertyGet("ActiveWorkBook");  
          //   工作簿中工作表的总数  
          int   nSheetsCount   =   vWorkbookSrc.OlePropertyGet("Sheets").OlePropertyGet("Count");  
          ShowMessage("当前工作簿中工作表数:"   +   String(nSheetsCount));  
          //  
          //   选定欲copy的工作表  
          vWorkbookSrc.OlePropertyGet("Sheets",   strSheetSrcName.c_str()).OleProcedure("Select");  
          vSheetSrc   =   vWorkbookSrc.OlePropertyGet("ActiveSheet");  
          //   copy工作表  
          vSheetSrc.OleProcedure("Copy");  
          //   这时造成一个新的工作簿  
          vWorkbookDst   =   vExcelApp.OlePropertyGet("ActiveWorkBook");  
          vSheetDst   =   vWorkbookDst.OlePropertyGet("ActiveSheet");  
          vSheetDst.OleProcedure("Select");  
   
          //   把新工作簿的表移回最初的工作簿  
          vSheetDst.OleProcedure("Move",   vSheetSrc);  
   
          //   保存工作簿  
          vWorkbookSrc.OleFunction("Save");  
          vWorkbookSrc.OleProcedure("Close");  
          //  
          vWorkbookSrc   =   Unassigned;  
          vWorkbookDst   =   Unassigned;  
          vSheetSrc   =   Unassigned;  
          vSheetDst   =   Unassigned;  
          //   退出,走人咧  
          vExcelApp.OleProcedure("Quit");  
          vExcelApp   =   Unassigned;  
   
          ShowMessage("Success!");  
  }  
  //---------------------------------------------------------------------------Top

4 楼ccrun(老妖)(www.ccrun.com)回复于 2003-12-04 11:21:02 得分 0

-->如何按页脚名称将该页设为Active。(当前活动页)?  
   
  是按照工作表的名称选定这个工作表吧?  
  String   strSheetName   =   "Sheet1";  
  vWorkbook.OlePropertyGet("Sheets",   strSheetName.c_str()).OleProcedure("Select");    
   
  -->如何一次获得已存在的所有Sheet页的页脚名称  
  int   nSheetsCount   =   vWorkbook1.OlePropertyGet("Sheets").OlePropertyGet("Count");  
   
  for(int   i=0;   i<nSheetsCount;   i++)  
  {  
          //   遍历每个工作表  
          vWorkbook.OlePropertyGet("Sheets",   i+1).OleProcedure("Select");  
          strSheetName   =   vWorkbook.OlePropertyGet("ActiveSheet").OlePropertyGet("Name");  
          ...  
  }Top

5 楼bullHEcow(牛)回复于 2003-12-07 09:34:28 得分 0

学习Top

相关问题

  • excel server 将一个sheet表拷贝到另外一个sheet的方法?
  • 在dephi中通过server控件怎样实现两个excel文件之间 的拷贝sheet表操作。
  • excel 问题, 如何把一个文件中的 sheet 拷贝到另一个文件中 ?
  • dear all : 如何把EXCEL表里面的数据拷贝到MS SQL SERVER?有最简单的方法吗?
  • Delphi6.0关于Excel拷贝问题
  • 怎样拷贝一个表结构?
  • EXECL表的拷贝与粘贴
  • 内存表数据的拷贝
  • 如何制作象Excel中的拷贝、粘贴、撤消、重做?
  • 可不可以隐藏EXCEL表中某一sheet?

关键词

  • excel
  • olepropertyget
  • vexcelapp
  • sheets
  • vworkbooksrc
  • oleprocedure
  • nsheetscount
  • vsheetsrc
  • vworkbookdst
  • 工作簿

得分解答快速导航

  • 帖主:fugel

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo