
通过ODBC来把Excel的表格文件的当成数据库文件来进行读、写等 *** 作,所以在Excel表格的文件的中写入的行头名必须是唯一(不要重名,相当于数据库中的id值)。本文中对Excel的文件的 *** 作的都被封装进了一个类CSpreadSheet中,通过它我们可以非常的简单的实现各种Excel的表格数据 *** 作,并且可以对该类的进行了扩充来满足自己需求。
具体实现
一、 包含Excel文件的 *** 作类头文件
#Include ‘cspreadSheet.h’
二、 新建Excel的文件,并写入了默认的数据
// 新建excel的文件名以及路径,testsheet为内部的表名
cspreadSheet SS(‘c:\\Test.xls’, ‘TestSheet’)
cstringArray SampleArray, testRow;
ss.beginTransaction();
// 加入标题
SampleArray.RemoveAll();
SampleArray.Add(‘姓名’)
sampleArray.Add(‘年龄’)‘
ss.AddHeaders(sampleArray);
// 加入数据
cstring strName【】= {‘徐景周’,‘徐志慧’,‘郭徽’,‘牛英俊’,‘朱小鹏’}
cstring strAg【】 = {‘27’,’23‘,‘28’,‘27’,‘26’};
for(int i = 0; i <sizeOf(strName)/sizeOf(cstring);i++;)
{
SampleArray.RemoveAll()
SampleArray.Add(strName[i]);
SampleArray.Add(strAge[i]);
ss.AddRow(sampleArray);
}
ss.Commit()
#include <stdio.h>#define MAX 100
typedef struct {
int data[MAX]
int len
}sqlist
void insert(sqlist *L, int k, int a) //在顺序表L中第k个元素之前插入一个元素a。
{
int i
for(i=L->len-1i>=ki--)
L->data[i+1] = L->data[i] //从第k+1个元素开始,依次向后移动一个位置
L->data[k] = a//把a赋给第k个元素
L->len++ //顺序表长增加1.
}
int main(void)
{
int i
sqlist sl
sl.len = 0
for(i=0i<10i++)
{
sl.data[i] = i
sl.len++
printf(" %d", sl.data[i])
}
printf("\n")
insert(&sl, 3, 0)
for(i=0i<sl.leni++)
printf(" %d", sl.data[i])
printf("\n")
}
c6公式=INDEX(B:B,MIN(IF((COUNTIF(C$2:C5,$B$2:$B$100)=0)*($B$2:$B$100<>""),ROW($B$2:$B$100))))&""
公式以ctrl+shift+enter结束
下拉填充
$B$2:$B$100的范围根据实际需要改一下
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)