《VC控制EXCEL的基本操作之选择范围篇》
2018-01-17 11:00
330 查看
选择篇 |
1 选择单元格 //选择一个单元格 range.AttachDispatch(sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("A1"))),TRUE); //选择多个单元格 range.AttachDispatch(sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("D1"))),TRUE); //使用变量表示单元格 CString CellName; Int i=1;j=1; CellName.Format(_T(“%c%d”),j+64,i); //A–Z 65-90 //加载单元格 rnge.AttachDispatch(range.GetRange(COleVariant(CellName),COleVariant(CellName))); |
2 选择某行 1) //选择第一行 range.AttachDispatch(sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("IV1"))),TRUE); //选择前5行 range.AttachDispatch(sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("IV5"))),TRUE); 2)先选择某行中的某个单元格,然后再选择整行 Range rows; rows.AttachDispatch(sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("A1"))),TRUE); rows=rows.GetEntireRow(); 3)获得所有的行,然后再选择指定行 Range rows; range.AttachDispatch(sheet.GetRows(),TRUE); //选择第一行 rows.AttachDispatch(range.GetItem(COleVariant((long)1),vtMissing).pdispVal); rows.SetRowHeight(COleVariant((long)60)); |
3 选择某一列 1) range.AttachDispatch(sheet.GetRange(COleVariant(L"A1"),COleVariant(L"A65536"))); //第一列 2)先选择某列中的某个单元格,然后再选择整列 range.AttachDispatch(sheet.GetRange(COleVariant(L"A1"),COleVariant(L"A1"))); //第一列 range=range.GetEntireColumn(); 3)先获得所有列,然后再选择某一列 //获得所有列 range.AttachDispatch(sheet.GetColumns(),true); //选择第一列 range.AttachDispatch(range.GetItem(COleVariant((long)1),vtMissing).pdispVal,TRUE); |
4 选择全部CELLS range.AttachDispatch(sheet.GetCells(),TRUE);//加载所有单元格 |
5 选择已使用的单元格 range.AttachDispatch(sheet.GetUsedRange());//加载已使用的单元格 |
6 获取单元格的值 1) range=sheet.GetRange(COleVariant("A1"),COleVariant("A1")); COleVariant rValue; rValue=COleVariant(range.GetValue()); rValue.ChangeType(VT_BSTR); this->MessageBox(CString(rValue.bstrVal)); 2) //读取第一个单元格的值 range.AttachDispatch(sheet.GetCells()); range.AttachDispatch(range.GetItem (COleVariant((long)1),COleVariant((long)1)).pdispVal ); vResult =range.GetValue(); CString str; if(vResult.vt == VT_BSTR) //字符串 { str=vResult.bstrVal; } else if (vResult.vt==VT_R8) //8字节的数字 { str.Format(L"%f",vResult.dblVal); } else if(vResult.vt==VT_DATE) //时间格式 { SYSTEMTIME st; VariantTimeToSystemTime((long)&vResult.date, &st); } else if(vResult.vt==VT_EMPTY) //单元格空的 { str=""; } |
相关文章推荐
- VC控制EXCEL的基本操作之设置篇
- 1、VC控制EXCEL的基本操作之设置篇
- VC控制EXCEL的基本操作之选择范围篇
- VC控制EXCEL的基本操作之设置篇
- 4、VC控制EXCEL的基本操作之选择范围篇
- VC操作Excel之基本操作
- 【用EXCEL VBA控制IE】 2-1:EXCEL VBA对IE控制的基本操作-用IE访问某URL
- VC操作Excel之基本操作 修改问题篇
- VC操作Excel之基本操作
- vc++连接Excel的基本用法,与操作
- VC 操作Excel 2007的基本操作!
- VC操作Excel之基本操作
- VC操作Excel之基本操作(颜色等)
- VC操作Excel之基本操作
- PHP操作Excel – PHPExcel 基本用法详解
- VC操作Excel-ODBC版
- 使用VB或VC操作Excel 2003
- Java使用POI导出excel(上)——基本操作
- linux系统命令行基本操作——系统服务的控制和openssh-server
- 利用VC对Excel进行操作