VC操作Excel复制行

来源:互联网 发布:王明亮 网络首发 编辑:程序博客网 时间:2024/06/01 21:57
COleVariant covTrue((short)TRUE), covFalse((short)FALSE), covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);_Application ExcelApp; Workbooks wbsMyBooks; _Workbook wbMyBook; Worksheets wssMysheets; _Worksheet wsMysheet; Range rgMyRge, rgMyRge1, rgMyRge2; //创建Excel 2000服务器(启动Excel) if (!ExcelApp.CreateDispatch("Excel.Application",NULL)) { AfxMessageBox("创建Excel服务失败!"); exit(1); } ExcelApp.SetVisible(false); wbsMyBooks.AttachDispatch(ExcelApp.GetWorkbooks(),true); wbMyBook.AttachDispatch(wbsMyBooks.Add(covOptional));//得到Worksheets wssMysheets.AttachDispatch(wbMyBook.GetWorksheets(),true);//得到sheet1 wsMysheet.AttachDispatch(wssMysheets.GetItem(_variant_t("sheet1")),true);//得到全部Cells,此时,rgMyRge是cells的集合 rgMyRge.AttachDispatch(wsMysheet.GetCells(),true); rgMyRge.SetValue(_variant_t(""));CString str;str = "医疗机构许可证信息查询结果";rgMyRge.SetItem(_variant_t((long)1),_variant_t((long)2),_variant_t(str)); str = "许可证编号";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)1),_variant_t(str)); str = "机构名称";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)2),_variant_t(str)); str = "经营性质";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)3),_variant_t(str));str = "经济性质";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)4),_variant_t(str));str = "负责人";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)5),_variant_t(str));str = "法人代表";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)6),_variant_t(str));str = "诊疗科目";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)7),_variant_t(str));str = "地址";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)8),_variant_t(str));str = "电话";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)8),_variant_t(str));str = "发证日期";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)9),_variant_t(str));str = "有效期截止";rgMyRge.SetItem(_variant_t((long)2),_variant_t((long)10),_variant_t(str));ExcelApp.SetVisible(true); /*LPDISPATCH lpDisp;lpDisp = wsMysheet.GetRange(_variant_t("A1"),_variant_t("A1"));ASSERT(lpDisp);rgMyRge.AttachDispatch(lpDisp);lpDisp = rgMyRge.GetEntireRow();rgMyRge.AttachDispatch(lpDisp);rgMyRge.Insert(_variant_t((long)1));*/rgMyRge.AttachDispatch(wsMysheet.GetCells());rgMyRge1.AttachDispatch(rgMyRge.GetItem(COleVariant(1L), COleVariant(1L)).pdispVal, TRUE);rgMyRge1.AttachDispatch(rgMyRge1.GetEntireRow(), TRUE);rgMyRge2.AttachDispatch(rgMyRge.GetItem(COleVariant(2L), COleVariant(1L)).pdispVal, TRUE);rgMyRge2.AttachDispatch(rgMyRge2.GetEntireRow(), TRUE);rgMyRge2.Copy(covOptional);// rgMyRge1.Insert(COleVariant(1L));for (int i = 0; i < 5; i++){rgMyRge2.Copy(covOptional);rgMyRge1.Insert(COleVariant(1L));}for (i = 0; i < 5; i++){rgMyRge1.Insert(COleVariant(1L));}//wbMyBook.PrintPreview(_variant_t(false)); //释放对象 rgMyRge.ReleaseDispatch(); wsMysheet.ReleaseDispatch(); wssMysheets.ReleaseDispatch(); wbMyBook.ReleaseDispatch(); wbsMyBooks.ReleaseDispatch(); ExcelApp.ReleaseDispatch(); CDialog::OnOK();

原创粉丝点击