写一行数据到EXECL中

void CMapgistwoView::WriteOneRowToExecl(long i, long n, Range m_range,_Worksheet m_sheet, CString *m_str)
{//从EXECL文件中读取指定行的数据
// i—行号
// n—数据列数
// m_str—存放读入的数据

m_range=m_sheet.GetRange(COleVariant(IndexToString(i, 1)),COleVariant(IndexToString(i, int(n))));

VARIANT varChunk;
VariantInit(&varChunk);
CString str;
SAFEARRAY *psa = NULL;
SAFEARRAYBOUND rgsabound;//一维维度
rgsabound.lLbound = 1;//下标起始位置
rgsabound.cElements = n;//数量
psa = SafeArrayCreate(VT_BSTR, 1 , &rgsabound);//分配空间,1表示一维数组

for(i=1;i<=n;i++)
{
	str=m_str[i-1];
	SafeArrayPutElement(psa, &i, str.AllocSysString());//给psa赋值
}

varChunk.vt = VT_ARRAY|VT_BSTR;//字符串型数组,
varChunk.parray = psa;//将psa的值赋值给varChunk
m_range.SetValue2(varChunk);//将varChunk写入EXECL文件的指定单元格中
VariantClear(&varChunk);//释放空间
SafeArrayDestroy(psa);//释放空间
return;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值