vc使用wps表格
使用VC6.0实现自动生成Word表格

使用VC6.0实现自动生成Word表格使用VC 6.0实现自动生成Word表格2010-10-16 11:25最近在VC6.0 环境下开发一个管理系统,界面开发花了不少功夫却感觉华而不实,自动生成word表格的功能实现了,倒觉得蛮实用的(1)首先,向你的项目中添加word 2003类型库:方法是在MFC ClassWizard中点击按钮Add Class,选择From a type library,在弹出的浏览对话框中,浏览找到office 2003安装路径下的msword.olb文件,例如:"C:\Program Files\Microsoft Office\OFFICE11\MSWORD.OLB",然后选择所需要的类(参考第(3)步),确定(2)在使用到这些类型的类的头文件或者cpp文件的开头,包含以下头文件:#include "msword.h"(3)定义对象_Application oWordApp;Documents oDocs;_Document oDoc;Range range;Paragraph paragraph;Paragraphs paragraphs;Cell cell;Cells cells;Table table;Tables tables;Border border;Borders borders;_Font font;PageSetup pagesetup;(4)创建或者连接word对象:初始化连接,判断当前系统是否有word进程,然后然后创建或连接对象。
LPDISPATCH pDisp; LPUNKNOWN pUnk; CL SID clsid;CoInitialize(NULL);CLSIDFromProgID(L"Word.Application",&clsid);if(GetActiveObject(clsid,NULL,&pUnk)==S_OK){pUnk-> QueryInterface(IID_IDispatch,(void **)&pDisp);oWordApp.AttachDispatch(pDisp);}else{if(!oWordApp.CreateDispatch("Word.Application")){AfxMessageBox("创建Word服务失败!");return FALSE;}}(5)初始化文档,生成WORD表格oDocs.ReleaseDispatch();oWordApp.m_bAutoRelease=true;BeginWaitCursor();oDocs=oWordApp.GetDocuments();COleVariant vOpt(DISP_E_PARAMNOTFOUND, VT_ERROR);oDoc=oDocs.Add(vOpt,vOpt,vOpt,vOpt);//加新文档pagesetup=oDoc.GetPageSetup();pagesetup.SetOrientation(1);//横向paragraphs=oDoc.GetParagraphs(); //生成第一个表paragraph=paragraphs.GetLast();//以当前段落最后一行为表起始位置range=paragraph.GetRange();//添加制作新表格tables=oDoc.GetTables();table=tables.Add(range,5+nBhCount,6,vOpt,vOpt);borders=table.GetBorders();borders.SetEnable(1);//显示表框range=table.GetRange();cells=range.GetCells();cells.SetVerticalAlignment(1);//文字居中cells.SetWidth(DOC_TABLE1_WIDTH);cell=table.Cell(1,1);//合并第一行的三列cell.Merge(table.Cell(1,6));range=cell.GetRange();range.SetBold(1);range.SetText(" 病害统计信息");//居中cell=table.Cell(2,1);cell.Merge(table.Cell(2,2));range=cell.GetRange();range.SetBold(1);range.SetText("组成材料");cell=table.Cell(2,2);cell.Merge(table.Cell(2,4));range=cell.GetRange();range.SetBold(1);range.SetText("病害种类");cell=table.Cell(2,3);range=cell.GetRange();range.SetBold(1);range.SetText("病害总数");for(int iBh=0;iBh<nBhCount;iBh++){cell=table.Cell(2+iBh+1,1);cell.Merge(table.Cell(2+iBh+1,2));range=cell.GetRange();range.SetBold(0);range.SetText(psDataArray.GetAt(iBh*3));cell=table.Cell(2+iBh+1,2);cell.Merge(table.Cell(2+iBh+1,4));range=cell.GetRange();range.SetBold(0);range.SetText(psDataArray.GetAt(iBh*3+1));cell=table.Cell(2+iBh+1,3);range=cell.GetRange();range.SetBold(0);range.SetText(psDataArray.GetAt(iBh*3+2));}cell=table.Cell(3+nBhCount,1);//合并7列cell.Merge(table.Cell(3+nBhCount,6));range=cell.GetRange();range.SetBold(1);range.SetText(" 等级统计信息"); for(int iCol=1;iCol<=6;iCol++){cell=table.Cell(3+nBhCount+1,iCol);range=cell.GetRange();range.SetBold(1);range.SetText(strDjColArray[iCol-1]);cell=table.Cell(3+nBhCount+2,iCol);range=cell.GetRange();range.SetBold(0);range.SetText(strDjArray[iCol-1]);}(6)保存,清理CString strSave=m_strFilePath+"\\"+m_strFileName;COleVariant vTrue((short)TRUE), vFalse((short)FALSE);_Document oActiveDoc;oActiveDoc = oWordApp.GetActiveDocument();oActiveDoc.SaveAs(COleVariant(strSave),COleVariant((short) 0), vFalse,COleVariant(""), vTrue,COleVariant(""),vFalse,vFalse, vFalse, vFalse, vFalse,vOpt,vOpt,vOpt,vOpt,vOpt);oWordApp.SetVisible(true);oDocs.ReleaseDispatch(); //断开关联;oWordApp.ReleaseDispatch(); //退出WORDEndWaitCursor();(7)以上代码实现的word表格效果如下实现了单元格的合并,等操作(8)实现单元格的拆分CComVariant con1(3),con2(2);cell=table.Cell(A,B)cell.Split(&con1,&con2);(9)总体来讲:代码的效率还是比较高的!。
vc使用wps表格

vc使用wps表格竭诚为您提供优质文档/双击可除vc使用wps表格篇一:常用wps表格功能(1)1.打开表格。
双击桌面图标,然后点击或者在左上角wps表格的下拉菜单中依次做如下选择新建一个表格如下:2.文字居中功能。
在格子中各行各列输入需要的内容,比如输入以下内容:输入完成后,首先选中文字,然后点击下面图片中红圈圈里的图标。
对应的,居中的旁边图标分别是左对齐和右对齐。
3.表格加框功能。
接下来是将文字内容加框,比较美观,同样也是选中文字,在一下红圈圈图标里选择下拉菜单,选择你想要的框线型,这里的例子是都加框。
居中和加框完成后的样子如下图:4.表格的行高列宽设置功能。
表格可以选择改变行列的高度和宽度,选中一行或者要改变行高的所有行,然后方法一:鼠标右键选择行高在这个窗口里直接输入行高行高。
就会改变、方法二:也是先选中行,然后点击界面右上角图标行和列,如下图然后输入想要的行高和列宽即可。
5.求和功能。
我们可以对表格里每一行每一列的数字进行求和;选中要求和的整行或者整列,然后选择自动求和。
不但可以求和,还可以求平均数等等。
求和后的样子:然后可以在求和后加框,加框可以参考第4点。
6.保存功能。
完成后如果要保存就点击左上方图标,或者选择左上角wps表格的下拉三角号,选择文件,继续选择保存,然后在弹出的窗口进行命名并且选择你要存放的位置即可。
篇二:wps表格常用函数应用教程(经典版)wps表格常用函数应用教程一、函数应用基础(一)函数和公式1.什么是函数wps表格函数即是预先定义,执行计算、分析等处理数据任务的特殊公式。
以常用的求和函数sum为例,它的语法是“sum(数值1,数值2,......)”。
其中“sum”称为函数名称,一个函数只有唯一的一个名称,它决定了函数的功能和用途。
函数名称后紧跟左括号,接着是用逗号分隔的称为参数的内容,最后用一个右括号表示函数结束。
参数是函数中最复杂的组成部分,它规定了函数的运算对象、顺序或结构等。
VC++中操作EXCEL总结(转)

VC++中操作EXCEL总结(转)第一篇:VC++ 中操作EXCEL总结(转)VC++ 中操作EXCEL总结(转)1、MSDN 上的代码,很好的例子#include “excel8.h”// OLE Variant for Optional.COleVariant VOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);_Application objApp;_Workbook objBook;Workbooks objBooks;Worksheets objSheets;_Worksheet objSheet;Range objRange;VARIANT ret;// Instantiate Excel and open an existing workbook.objApp.CreateDispatch(“Excel.Application”);objBoo ks = objApp.GetWorkbooks();objBook = objBooks.Open(“C:Test.xls”, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional, VOptional);objSheets = objBook.GetWorksheets();objSheet = objSheets.GetItem(COleVariant((short)1));//Get the range object for which you wish to retrieve the //data and then retrieve the data(as a variant array, ret).objRange = objSheet.GetRange(COleVariant(“A1”), COleVariant(“C8”));ret = objRange.GetValue();//Create the SAFEARRAY from the VARIANT ret.COleSafeArray sa(ret);//Determine the array's dimensions.long lNumRows;long lNumCols;sa.GetUBound(1, &lNumRows);sa.GetUBound(2, &lNumCols);//Display the elements in the SAFEARRAY.longindex[2];VARIANT val;int r, c;TRACE(“Contents of SafeArra yn”);TRACE(“=====================nt”);for (c=1;c<=lNumCols;c++){TRACE(“ttCol %d”, c);}TRACE(“n”);for(r=1;r<=lNumRows;r++){TRACE(“Row %d”, r);for(c=1;c<=lNumCols;c++){index[0]=r;index[1]=c;sa.GetElement(index, &val);switch(val.vt){case VT_R8: {TRACE(“tt%1.2f”, val.dblVal);break;}case VT_BSTR: {TRACE(“tt%s”,(CString)val.bstrVal);break;}case VT_EMPTY: {TRACE(“tt”);break;} } }TRACE(“n”);}//Close the workbook without saving changes //and quit Microsoft Excel.objBook.Close(COleVariant((short)FALSE), VOptional, VOptional);objApp.Quit();2、不错的一篇文章在VC中彻底玩转Excel作者:龚敏来源:子玉山庄更新:10/8/2004如今Excel是越来越重要了,在我们自己开发的程序中不免要和Excel打交道了。
VC++操作EXCEL表格,附带两个小例子

C++读取Excel的XLS文件的方法有很多,但是也许就是因为方法太多,大家在选择的时候会很疑惑。
由于前两天要做导表工具,比较了常用的方法,总结一下写个短文,1.OLE的方式这个大约是最常用的方式,这个方式其实启动了一个EXCEL的进程在背后读写EXCEL 文件,这个方式的最大好处是什么事情都能做。
包括设置EXCEL的格式,增加删除Sheet,读写单元格,等等。
功能几乎是最全的,而且使用起来也不是特别的难。
其基本方法都是使用导出的.h文件进行OLE操作,但是由于OLE的接口说明文档不多,想非常完美的使用她们也不是太容易,好在例子也很多。
网上普遍认为OLE速度慢,EXCEL的OLE读写方式也基本一样。
但是读取速度可以改进,如果在读取的加载整个Sheet的Range的全部数据,而不是一个个单元格读取,那么速度还是相对不错。
想想原理也很简单,整体读取减少了OLE的交互次数。
OLE的写入方式一般只能几个进行比较方便,所以速度可能要快很多。
我自己的亲身体会是,一个EXCEL文件,100多列的字段,如果采用一个个单元格的读取方式,1s大约3条左右的记录,如果整体读取,速度可以提高几十倍。
OLE读写EXCEL方式功能很强大,读取速度还可以,但写入速度不高,当然这个方式不可能移植的,而且你必须安装了EXCEL。
2.Basic EXCEL 方式这是CodeProject上的一个推荐开源工程了,/KB/office/BasicExcel.aspx作者是基于EXCEL的文件格式进行的处理。
但是为什么叫Basic EXCEL呢。
他不支持很多东西,公式,文件格式,表格合并等(有人说中文支持也不好),所以可以认为他只支持最基本的EXCEL表格,我自己的尝试是如果这个EXCEL文件有其他元素(公式,格式等),使用Basic EXCEL读取会失败。
OLE读写EXCEL方式功能比较弱,由于是直接根据文件格式操作,读写速度都不错,你也不需要按照EXCEL,另外这个方式是可以移植的,但是有一些成本,其代码比较晦涩难懂,而且没有注释,另外即使在Windows平台上,告警也很多。
如何用VC读取Excel表格中的数据详细介绍

如何用VC读取Excel表格中的数据详细介绍如何用VC读取Excel表格中的数据详细介绍2007-03-29 17:44首先,我们要明白的是,VC是通过ODBC来访问Excel表格的,也就是说,VC将Excel表格,当作数据库来处理。
当然了,也可以通过读以tab键隔开的文件来处理这样的文件,但是,我还是更加愿意用读取数据库的方式来访问Excel表格。
第二,既然是数据库,那么,就需要建立一个与该库对应的dsn,这个,而且,在建立dsn之前,首先要确定,已经安装了Excel的驱动。
第三,要访问数据库中的表格,就要先打开该表格,如此,就需要一个与之对应的RecordSet。
如此,有如下代码:void CRWExcel::ReadFromExcel(){CDatabase database;CString sSql;CString sItem1, sItem2;CString sDriver;CString sDsn;CString sFile = "Demo.xls";// 将被读取的Excel文件名// 检索是否安装有Excel驱动 "Microsoft Excel Driver (*.xls)"sDriver = GetExcelDriver();if (sDriver.IsEmpty()){// 没有发现Excel驱动AfxMessageBox("没有安装Excel驱动!");return;}// 创建进行存取的字符串sDsn.Format("ODBC;DRIVER={%s};DSN='''';DBQ=%s", sDriver, sFile);TRY{// 打开数据库,建立与这个Excel对应的Databasedatabase.Open(NULL, false, false, sDsn);CRecordset recset(&database);// 设置读取的查询语句.demo.xls并非文件名,需要在excel中进行//设置,具体文章最后有讲sSql = "SELECT Age, Name FROM DEMO.XLS";// 执行查询语句,打开表格recset.Open(CRecordset::forwardOnly, sSql, CRecordset::readOnly);// 获取查询结果while (!recset.IsEOF()){//读取Excel内部数值recset.GetFieldValue("Name ", sItem1);recset.GetFieldValue("Age", sItem2);// 移到下一行recset.MoveNext();}// 关闭数据库database.Close();}CATCH(CDBException, e){// 数据库操作产生异常时...AfxMessageBox("数据库错误: " + e->m_strError);}END_CATCH;}需要注意的是,我们对我们的Excel表格需要进行一些处理,需要先选定我们要读取的数据,之后,选择插入>>名字>>之后,在输入框中输入我们在select语句中用到的表名。
vc-操作Excel模板步骤

最近刚完成一个例子,受益不菲,和大家分享一下。
VC的Excel编程操作,总结:(结合网络资源)利用VC操作Excel的方法至少有两种1 .利用ODBC把Excel文件当成数据库文件,来进行读、写、修改等操作,网上有人编写了CSpreadSheet类,提供支持。
(不太能理解CSpreadSheet)2. 利用Automation(OLD Automation)方法。
将Excel当成组件服务器,利用VBA。
又分为基于MFC的和SDK两种。
(制作报表适用)主要研究了一下第二种基于MFC的OLE编程方法。
一、Excel的对象模型Application:代表应用程序本身。
即Excel应用程序Workbooks:是Workbook 的集合,代表了工作薄。
Worksheets:是Worksheet的集合,是Workbook的子对象。
Range:是Worksheet的子对象,可以理解为Sheet中一定范围的单元格。
Shapes:是Worksheet的子对象,用于存储图片等信息的单元格。
二、VC操作Excel的初始化过程1、导入Excel库文件。
使用VC6.0的同志们可进行一下操作获取Excel库文件:1.启动VC 6.0,打开新建对话框,新建一个MFC AppWizard(exe)工程,这里工程明设置为TestExcel。
2.进入MFC 应用程序向导,选择基本对话框,直接点击完成,工程文件结构如下图:3.打开MFC ClassWizard窗口(查看—>建立类向导),选择Automation,单击Add Class按钮,选择From a type library...,弹出文件选择对话框,之后定位到Microsoft Office 的安装目录(通常为C:\Program Files\Microsoft Office\Office),选择(excel.exe适用于Excel2003;EXCEL9.OLB适用于Excel2000),确定后,弹出Confirm Classes 窗口,(在不知道会使用到哪些类的情况下,)选择列表中的所有类,单击OK按钮。
如何用VC在Word中添加、操作表格

,VC在WORD中加入文本数据;进行word写的VBA宏代码VC++会自动地在WordAutomation.cpp中的CWordAutomationApp::InitInstance()中生成如下的代码,使得COM的服务能有效。
if (!AfxOleInit()){AfxMessageBox(IDP_OLE_INIT_FAILED);return FALSE;}// TODO: Add your command handler code hereCOleVariant vTrue((short)TRUE),vFalse((short)FALSE),vTmp,vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);//创建Word实例_Application oWordApp;if (!oWordApp.CreateDispatch("Word.Application", NULL)){AfxMessageBox("创建失败!", MB_OK | MB_SETFOREGROUND);return;}Range Rng;Table Tbl;Tables Tbls;//创建一个新的word文档Documents oDocs;_Document oDoc;oDocs = oWordApp.GetDocuments();oDoc = oDocs.Add(vOpt, vOpt, vOpt, vOpt);//如果是word 98,则应该带两个参数,如oDocs.Add(vOpt, vOpt)//把文本添加到word文档Selection oSel;oSel = oWordApp.GetSelection();oSel.TypeText("one");oSel.TypeParagraph();oSel.TypeText("two");oSel.TypeParagraph();oSel.TypeText("three");//保存word文档_Document oActiveDoc;oActiveDoc = oWordApp.GetActiveDocument();oActiveDoc.SaveAs(COleVariant("c:\\doc1.doc"),COleVariant((short)0),vFalse, COleVariant(""), vTrue, COleVariant(""),vFalse, vFalse, vFalse, vFalse, vFalse,vFalse,vFalse,vFalse,vFalse,vFalse);//退出word应用程序//oWordApp.Quit(vOpt, vOpt, vOpt);二,用VC在WORD中加入表格;COleVariant vTrue((short)TRUE),vFalse((short)FALSE),vTmp,vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);//创建Word实例_Application WrdApp;if (!WrdApp.CreateDispatch("Word.Application", NULL)){AfxMessageBox("创建失败!", MB_OK | MB_SETFOREGROUND);return;}Documents Docs;_Document Doc;Range Rng;Table Tbl;Tables Tbls;//创建新文档Docs = WrdApp.GetDocuments();Doc = Docs.Add(vOpt, vOpt, vOpt, vOpt);Rng=Doc.GetContent();//{{Tbls=Doc.GetTables(); 必须给这个变量初始化//}}Tbls.Add(Rng,5,5,vOpt,vOpt);/。
VC对Excel的操作

VC2010对Excel的操作1.创建新的C++工程创建基于对话框的MFC程序2.添加库、添加Excel类库在工程名上右键,选择“添加”—“类”(或者点击菜单栏的“项目”->“添加类”),选择“TypeLib中的MFC类”(MFC Class From TypeLib)类来源选“注册表”,在可用的类型库中选择“Microsoft Excel 11.0 Object Library<1.5>”在接口列表框中选择需要的类,在此,我们选择_Application,_Workbook,Worksheet,Range,Workbooks,Worksheets这六个就可以了。
可以看到,六个类被添加了进来。
3.修改头文件分别将加进来的六个头文件上面的“#import"C:\\ProgramFiles\\Microsoft Office\\OFFICE11\\EXCEL.EXE"no_namespace”注释掉。
4.添加头文件在stdAfx.h头文件中添加加进来的这几个头文件#include"CApplication.h"#include"CRange.h"#include"CWorkbook.h"#include"CWorkbooks.h"#include"CWorksheet.h"#include"CWorksheets.h"5.修改错误编译,会出现两个错误:…\crange.h(335): warning C4003: “DialogBoxW”宏的实参不足…\crange.h(335): error C2059: 语法错误:“,”双击错误提示,定位在错误行,VARIANT DialogBox(){VARIANT result;InvokeHelper(0xf5, DISPATCH_METHOD, VT_VARIANT, (void*)&result, NULL);return result;}将该函数名“DialogBox()”前面加“_”下划线,即“_DialogBox()”,这样就可以编译成功了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
竭诚为您提供优质文档/双击可除vc使用wps表格篇一:常用wps表格功能(1)1.打开表格。
双击桌面图标,然后点击或者在左上角wps表格的下拉菜单中依次做如下选择新建一个表格如下:2.文字居中功能。
在格子中各行各列输入需要的内容,比如输入以下内容:输入完成后,首先选中文字,然后点击下面图片中红圈圈里的图标。
对应的,居中的旁边图标分别是左对齐和右对齐。
3.表格加框功能。
接下来是将文字内容加框,比较美观,同样也是选中文字,在一下红圈圈图标里选择下拉菜单,选择你想要的框线型,这里的例子是都加框。
居中和加框完成后的样子如下图:4.表格的行高列宽设置功能。
表格可以选择改变行列的高度和宽度,选中一行或者要改变行高的所有行,然后方法一:鼠标右键选择行高在这个窗口里直接输入行高行高。
就会改变、方法二:也是先选中行,然后点击界面右上角图标行和列,如下图然后输入想要的行高和列宽即可。
5.求和功能。
我们可以对表格里每一行每一列的数字进行求和;选中要求和的整行或者整列,然后选择自动求和。
不但可以求和,还可以求平均数等等。
求和后的样子:然后可以在求和后加框,加框可以参考第4点。
6.保存功能。
完成后如果要保存就点击左上方图标,或者选择左上角wps表格的下拉三角号,选择文件,继续选择保存,然后在弹出的窗口进行命名并且选择你要存放的位置即可。
篇二:wps表格常用函数应用教程(经典版)wps表格常用函数应用教程一、函数应用基础(一)函数和公式1.什么是函数wps表格函数即是预先定义,执行计算、分析等处理数据任务的特殊公式。
以常用的求和函数sum为例,它的语法是“sum(数值1,数值2,......)”。
其中“sum”称为函数名称,一个函数只有唯一的一个名称,它决定了函数的功能和用途。
函数名称后紧跟左括号,接着是用逗号分隔的称为参数的内容,最后用一个右括号表示函数结束。
参数是函数中最复杂的组成部分,它规定了函数的运算对象、顺序或结构等。
使得用户可以对某个单元格或区域进行处理,如确定成绩名次、计算三角函数值等。
2.什么是公式函数与公式既有区别又互相联系。
如果说前者是wps表格预先定义好的特殊公式,后者就是由用户自行设计对工作表进行计算和处理的公式。
以公式“=sum(e1:h1)*a1+26”为例,它要以等号“=”开始,其内部可以包括函数、引用、运算符和常量。
上式中的“sum(e1:h1)”是函数,“a1”则是对单元格a1的引用(使用其中存储的数据),“26”则是常量,“*”和-1-“+”则是算术运算符(另外还有比较运算符、文本运算符和引用运算符)。
如果函数要以公式的形式出现,它必须有两个组成部分,一个是函数名称前面的等号,另一个则是函数本身。
(二)函数的参数函数右边括号中的部分称为参数,假如一个函数可以使用多个参数,那么参数与参数之间使用半角逗号进行分隔。
参数可以是常量(数字和文本)、逻辑值(例如真值或假值)、数组、错误值(例如#n/a)或单元格引用(例如e1:h1),甚至可以是另一个或几个函数等。
参数的类型和位置必须满足函数语法的要求,否则将返回错误信息。
1.常量常量是直接输入到单元格或公式中的数字或文本,或由名称所代表的数字或文本值,例如数字“2890.56”、日期“20xx-8-19”和文本“黎明”都是常量。
但是公式或由公式计算出的结果都不是常量,因为只要公式的参数发生了变化,它自身或计算出来的结果就会发生变化。
2.逻辑值逻辑值是比较特殊的一类参数,它只有真或假两种类型。
例如在公式“=iF(a3=0,"",a2/a3)”中,“a3=0”就是一个可以返回真或假两种结果的参数。
当“a3=0”为真时在公式所在单元格中填入“0”,否则在单元格中填入“a2/a3”的计算结果。
-2-3.数组数组用于可产生多个结果,或可以对存放在行和列中的一组参数进行计算的公式。
wps表格中有常量和区域两类数组。
前者放在“{}”(按下ctrl+shift+enter组合键自动生成)内部,而且内部各列的数值要用逗号“,”隔开,各行的数值要用分号“;”隔开。
假如你要表示第1行中的56、78、89和第2行中的90、76、80,就应该建立一个2行3列的常量数组“{56,78,89;90,76,80}。
区域数组是一个矩形的单元格区域,该区域中的单元格共用一个公式。
例如公式“=tRend(b1:b3,a1:a3)”作为数组公式使用时,它所引用的矩形单元格区域“b1:b3,a1:a3”就是一个区域数组。
4.错误值使用错误值作为参数的主要是信息函数,例如“eRRoR.type”函数就是以错误值作为参数。
它的语法为“eRRoR.type(错误码)”,如果其中的参数是#num!,则返回数值“6”。
5.单元格引用单元格引用是函数中最常见的参数,引用的目的在于标识工作表单元格或单元格区域,并指明公式或函数所使用的-3-数据的位置,便于它们使用工作表各处的数据,或者在多个函数中使用同一个单元格的数据。
还可以引用同一工作簿不同工作表的单元格,甚至引用其他工作簿中的数据。
根据公式所在单元格的位置发生变化时,单元格引用的变化情况,我们可以引用分为相对引用、绝对引用和混合引用三种类型。
以存放在F2单元格中的公式“=sum(a2:e2)”为例,当公式由F2单元格复制到F3单元格以后,公式中的引用也会变化为“=sum(a3:e3)”。
若公式自F列向下继续复制,“行标”每增加1行,公式中的行标也自动加1。
如果上述公式改为“=sum($a$3:e$3)”,则无论公式复制到何处,其引用的位置始终是“a3:e3”区域。
混合引用有“绝对列和相对行”,或是“绝对行和相对列”两种形式。
前者如“=sum($a3:e3)”,后者如“=sum(a$3:e$3)”。
上面的几个实例引用的都是同一工作表中的数据,如果要分析同一工作簿中多张工作表上的数据,就要使用三维引用。
假如公式放在工作表sheet1的c6单元格,要引用工作表sheet2的“a1:a6”和sheet3的“b2:b9”区域进行求和运算,则公式中的引用形式为“=sum(sheet2!a1:a6,sheet3!b2:b9)”。
也就是说三维引用中不仅包含单元格或区域引用,还要在前面加上带“!”的工作表名称。
假如你要引用的数据来自另一个工作簿,如工作簿book1中的sum函数要绝对引用工作簿book2中的数据,-4-其公式为“=sum([book2]sheet1!sas1:sas8,[book2]sheet2!sbs1:sbs9)”,也就是在原来单元格引用的前面加上“[book2]sheet1!”。
放在中括号里面的是工作簿名称,带“!”的则是其中的工作表名称。
即是跨工作簿引用单元格或区域时,引用对象的前面必须用“!”作为工作表分隔符,再用中括号作为工作簿分隔符。
不过三维引用的要受到较多的限制,例如不能使用数组公式等。
提示:上面介绍的是wps表格默认的引用方式,称为“a1引用样式”。
如果你要计算处在“宏”内的行和列,必须使用“R1c1引用样式”。
在这种引用样式中,wps表格使用“R”加“行标”和“c”加“列标”的方法指示单元格位置。
启用或关闭R1c1引用样式必须单击“工具→选项”菜单命令,打开对话框的“常规”选项卡,选中或清除“设置”下的“R1c1引用样式”选项。
由于这种引用样式很少使用,限于篇幅本文不做进一步介绍。
6.嵌套函数除了上面介绍的情况外,函数也可以是嵌套的,即一个函数是另一个函数的参数,如“=iF(oR(Rightb(e2,1)="1",Rightb(e2,1)="3",Rightb(e2,1)="5",Rightb(e2,1)="7",Rightb(e2,1)="9"),"男","女")”。
其中公式中的iF函数使用了嵌套的Rightb函数,并将后者返回的结果作为iF的逻辑判断依据。
-5-篇三:wps表格技巧100例(超全!excel同样适用)让你薪酬翻倍的wps表格技巧100例入门到精通100例wps表格实战技巧,深入浅出助你成为表格达人。
新浪微博@wps玩转officewps社区新浪微刊《wps表格(excel)实用技巧》目录一、基本方法................................................. ..............71.快速获取帮助,学习实用教程..............................................72.快速选中全部工作表................................................. .....73.给单元格重新命名................................................. .......74.在wps表格中选择整个单元格范围.........................................85.快速移动/复制单元格................................................. ....86.快速修改单元格式次。