如何读Excel表中的数据?

slchen 2004-03-11 03:14:09
NAME 张三 李四 王五 马六
DATE 10 13 14 16
GENDER 1 0 1 1
ADRESS 辽宁 海南 北京 上海


这样的Excel 表格,用什么命令按照字段读出(包括使用那个控件,具体一些,没用过Excel)
(目的:我想把他们读出后,再保存到CB自己的数据库中(.dbf))
...全文
100 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gfh_79_0 2004-03-17
  • 打赏
  • 举报
回复
论坛上的

#include <vcl.h>
#include <utilcls.h>
#include <comobj.hpp>
#include <IniFiles.hpp>
#pragma hdrstop

#include "Excel.h"
#define PG OlePropertyGet
#define PS OlePropertySet
#define FN OleFunction
#define PR OleProcedure
Variant Ex,Wb,Sh1;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
Ini();
}
//---------------------------------------------------------------------------
bool TForm1::OpenFile(AnsiString file_name,bool flag)//打开指定的EXCEl文件
{
if(Ex.IsEmpty())
{
try
{
Ex = Variant::CreateObject("Excel.Application");
}
catch(...)
{
return false;
}
}
Ex.PG("WorkBooks").PR("Open",file_name);
Wb = Ex.PG("ActiveWorkBook");
Sh1 = Wb.PG("ActiveSheet");
Ex.PS("Visible",flag);//false文件不可见,true可见
return true;
}
//------------------------------------------------------------------------------
bool TForm1::CreateNewFile()//新建一个EXCEL文件
{
if(Ex.IsEmpty())
{
try
{
Ex = Variant::CreateObject("Excel.Application");
}
catch(...)
{
return false;
}
}
Ex.PG("WorkBooks").PR("Add");
Wb = Ex.PG("ActiveWorkBook");
Sh1 = Wb.PG("ActiveSheet");
return true;

}
//-------------------------------------------------------------------------------
void TForm1::SetValue(int i,int j,AnsiString value)//给指定的单元格赋值,i=行号 j=列号
{
Sh1.PG("Cells",i,j).PS("Value",value);
}
//--------------------------------------------------------------------------------
AnsiString TForm1::ReadValue(int i,int j)//读指定的单元格,i=行号 j=列号
{
return Sh1.PG("Cells",i,j).PG("Value");
}

//-------------------------------------------------------------------------------
void TForm1::SaveAs(AnsiString file_name)//文件另存为
{
if(FileExists(file_name))
DeleteFile(file_name);
Wb.PG("Application").PS("DisplayAlerts",false);//取消提示
Wb.FN("SaveAs",file_name);
Wb.FN("Close");//关闭打开的文件,如不需要则该语句去掉
}
//-------------------------------------------------------------------------------
void TForm1::CloseEXCEL()
{
if(!Ex.IsEmpty())
Ex.FN("Quit");
Sh1 = Unassigned;
Wb = Unassigned;
Ex = Unassigned;
}

以上是操作EXCEL的方法,
写入数据库用Table或query应该会吧。
clong320 2004-03-17
  • 打赏
  • 举报
回复
up
ffxing 2004-03-15
  • 打赏
  • 举报
回复
平时只用SQL SERVER数据库,Excel没有操作过,学习
JackLucifer 2004-03-15
  • 打赏
  • 举报
回复
up
slchen 2004-03-15
  • 打赏
  • 举报
回复
up

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧