EXCEL数据通讯

2024-05-09

EXCEL数据通讯(共12篇)

EXCEL数据通讯 篇1

0 引言

启动VS 2010集成开发环境[1],链接Excel电子表格,以程序方式将Excel电子表格中的数据读出,定义一个中间件Dataset数据集,将取到的数据缓存在内存中的一个临时存储区,链接各种数据库,构造插入数据记录的程序代码,打开数据库链接,将中间件Dataset数据集中暂存的数据永久插入数据库中,关闭数据库链接[2]。

1 导入Office模块

VS 2010加强了对Office的支持,给开发带来了极大的灵活性,增强了应用程序与Office的交互,并且能够在很大程度上精简代码。

为了开发Excel应用程序,首先得把其相关应用程序集导入到VS 2010集成开发环境中[3],具体操作是,在创建的项目上单击鼠标右键,在关联菜单上选择“添加引用”菜单项,会出现“添加引用”对话框,在“.NET”标签页上选择“Microsoft.Office.Interop.Excel”程序集,填加到创建的应用程序项目中,如图1所示。

如果要进行Word应用程序开发,也可以用同样方法把“Microsoft.Office.Interop.Word”程序集导入到应用程序项目中。

2 链接数据源

数据源泛指各种不同位置上的数据库、各类数据文件,每种数据源都有自己不同的链接规范,VS 2010按这些不同规范都组织在一起,为编程人员提供了一个统一的操作接口,编程人员可根据自己应用程序所用不同数据源,而选取不同的链接方式和参数。

在这里把Excel表数据导入My SQL数据库,因此具体论述这种数据源的链接方式,其他数据库原理相同。

2.1 链接Excel电子表格文件

填写好要导入的电子表格,保存为硬盘文件。为了提高软件通用性,能动态选择数据源,以text Box文本框来接收通用打开对话框提交的Excel电子表格文件名,程序代码如下:

再以text Box.Text来构造链接字符串,打开将指定的Excel电子表格文件,程序代码如下:

在上式中,connect String Builder是Ole Db ConnectionString Builder实例,该变量中存放链接字符串,其中this.text Box1.Text.Trim()是接收到的指定文件名常量。

把上述代码写入用VS 2010生成的程序框架中,Excel电子表格文件在程序代码中就可以正常打开了,下一步是读取电子表格文件内单元格中的数据。

2.2 链接SQL Server数据库

VS 2010带有一个轻型的SQL 2008数据库系统[4],首先用这个系统建立一个SQL数据库abc.mdf,在数据库中建立一张二维数据表文件,取名为temp1。在VS 2010中的操作路径是:在项目上右击鼠标→在快捷菜单中先“添加”菜单项→在下一级级联菜单中选“新建项”菜单项→打开添加新项对话框,选择“数据”选项卡→在“数据”选项卡内选择“基于服务的数据库”项,填好自己的数据库名,本例用abc.mdf。

这时在服务器资源管理器上会添加拟建数据库的链接,展开数据库节点,在“表”节点上右击鼠标,在快捷菜单上选择“新建表”菜单项,建立新表结构,然后输入表名存盘,本例用temp1表名,这时新表中是一个空的表结构,表中的数据要用程序代码动态从推入。这里要注意,建立的新表结构要和Excel电子表格所输入的数据结构一致,否则不能导入数据。数据库链接的程序代码如下:

上述代码中使用Configuration Manager类,可以访问计算机、应用程序和用户的配置信息,ConnectionStrings类用来从app.config文件中获取链接字符串,该字符串内容如下:

其提供程序为:System.Data.Sql Client。

把上述代码写入用VS 2010生成的程序框架中,SQL数据库就可以正常打开了,下一步就是向数据库中推入数据了。

读入Excel电子表格数据

通过2.1节,已经用程序代码打开了Excel文件,下面用程序代码把单元格数据读出,为此,需要在程序的命名空间上面引入Ole DB名字空间:using System.Data.Ole Db,然后才能使用该名字空间里的资源。程序代码如下:

在上述程序代码中,(1)语句是根据2.2节所述的内容,建立与数据库abc.mdf的链接,链接变量为cn;(2)语句是构造读取Excel电子表格内容的字符串,其变量名为sql;(3)语句是以cn和sql变量为参数,建立读取Excel电子表格文件的命令对象,对象名为cmd Liming;(4)语句是,实现与数据库的链接;(5)语句是,创建数据适配器对象,其名称为my Adapter;(6)语句为定义中间件数据集对象,对象名为my Data Set;(7)语句为,把从Excel电子表格中读取到的数据填入中间件my Data Set中暂存,(8)(9)两条语句把中间件中的数据展示在屏幕上。图2是程序的运行结果,此时的数据是从Excel电子表格读取到中间件Data Set中的临时数据,如果计算机关掉或程序退出,此数据将不复存在,下一步,将编程实现将其永久存入数据库中。

程序运行结果如图2所示。

3 将数据永久存入数据库

下一步要把中间件Data Set中的临时数据永久存入数据库中[5]。根据2.2节所述内容,数据库已经连通,库结构也已经建好,并与Excel电子表格数据结构一致。为了使用SQL数据库,需要在本项目的名字空间之上加入引用语句:using System.Data.Sql Client,程序代码如下:

在上述程序代码中,(1)是建立数据库链接,其中Confirmation Manager与2.2节论述相同;(2)为定义向数据库插入数据的字符串变量;(3)是打开链接,为插入数据库数据作准备;(4)构造一个上限为my DataSet.Tables[0].Rows.Count的循环,其值为Excel表中数据行的总数,链接字符串str SQL在循环体内动由程序语句构造,构造因子为my Data Set.Tables[0].Rows[i][2].ToString(),它可以定位到中间件Data Set的行、列焦点上,在循环控制变量i的作用下,可以遍历表中所有数据。Sql Command类实例变量cmd用来执行指定链接conn上的具体插入命令strsql,在cmd的成员函数Execute Nor Query()的作用下,将从中间件my Data Set中取到的数据按行插入数据库中[6]。循环执行结束,即可将所有数据存入数据库中;(5)是关闭数据库链接,以保证数据安全,并释放资源。将数据永久导入数据库后的程序运行结果如图3所示。

4 结语

在科研工作中,常会遇到海量数据处理的问题。这些数据通常由采集卡保存在Excel中,如果能够方便地输入数据库中,可以帮助科研工作者完成很多重复性、规律性的工作,节约人力,提高效率,便于后续的数据处理和数据分析[7]。程序开发者也可以针对具体的应用,将Office开发做成一些类或组件,增强软件重用性,更加提高开发效率。

摘要:在此详细分析了将电子表格导入到数据库的基本原理和实现方法,解决了大量工程实验数据散落在多个文件中、主要靠手工组合、处理的原始方法,减轻了工程技术人员的负担,提高了数据处理效率,杜绝了数据处理差错。在此采用先进的VS 2010.NET开发工具,动态选择导入文件,在可靠的数据库连接上,构造导入数据中间件Dataset,采用数据库中数据字段与Excel表中列的对应关系,以中间件为桥梁逐行自动读入库外数据并统一保存。该论述方法具有通用性,程序代码稍做修改可适用与其他类型规则数据文件的导入。

关键词:Excel电子表格,数据库,中间件,数据库连接

参考文献

[1]ROBINSON S.C#高级编程指南[M].北京:清华大学出版社,2009.

[2]罗斌.Visual C#.NET精彩编程实例集锦[M].北京:中国水利水电出版社,2009.

[3]PETZOLD C.Microsoft C#Windows程序设计(上册)[M].北京:北京大学出版社,2009.

[4]王晟.Visual C#.NET数据库开发经典案例解析[M].北京:清华大学出版社,2010.

[5]PETZOLD C.Microsoft C#Windows程序设计(下册)[M].北京:北京大学出版社,2009.

[6]ARDESTANI K.高效掌握ADO.NET[M].北京:清华大学出版社,2010.

[7]侯高雷.基于C#的终端自动化测试系统设计与实现[J].现代电子技术,2012,35(11):103-105.

[8]章立民.SQL Server2005数据库开发实战[M].北京:机械工业出版社,2008.

EXCEL数据通讯 篇2

方法 1:突出显示重复数据

你可以将重复的数据突出显示,这样你就可以找到它们,并且避免重复录入。做法如下:

先要选中你要找出重复数据的范围。比如说,你要在“员工编号”里找重复项,就把“员工编号”一栏全选中。

然后在开始选项卡 ->条件格式->突出显示单元格规则->重复值。

收起这个图片展开这个图片

在重复值对话框上,选择你要把重复项突出显示的格式,再确定。

收起这个图片展开这个图片

搞定!重复的内容一目了然,这样可以采取相应措施咯,

收起这个图片展开这个图片

方法 2:轻松删除重复数据

可以利用 Excel 删除重复数据的功能,把重复项删除。做法如下:

选中你要删除重复数据的范围。比方说,把整张表格全部选中。

然后在数据选项卡上 ->删除重复项。

收起这个图片展开这个图片

弹出一个删除重复项对话框。你需要在哪几列里面找重复项,就把哪几列勾上,确定一下。

收起这个图片展开这个图片

Excel 会检查重复值,并把含有重复值的记录删掉,然后弹出一个框告诉你删掉多少条(或是没有找到重复记录):

收起这个图片展开这个图片

EXCEL数据通讯 篇3

★建立“数据特区”

数据特区很方便,如何设置呢?

选中需要建立“数据特区”的区域,单击Excel 2007“开始”选项卡中的“套用表格格式”,打开列表选择喜欢的样式,单击。在如图1对话框中确认“表数据的来源”正确,然后选中“表包含标题”,确定,“数据特区”就出现了(见图2)。

(1)

(2)

★“数据特区”会计算

“数据特区”建立完毕,小刘就可以使用“结构化引用”的方式,在里面执行各种计算。

建立计算行或列

过去为新员工计算养老金较麻烦,如果小刘在图2工作表的第8行增加数据,要将I7单元格中的公式填充或复制到I8才能算出“实增金额”。

Excel 2007增加了一个“计算行”(或“计算列”)功能,凡是在“数据特区”中新增的行可以自动应用其上方的公式进行计算。以在如图2所示的数据特区中建立计算行为例,小刘只需选中第7行中的任意一个单元格,进入“开始→单元格→插入”,选择“在下方插入表行”,此后新增的行就会自动应用其上方的公式。小刘只需在新增的计算行中输入数据,就能自动计算出“实增金额”等内容了。同法,小刘还可以在I等行的左侧或右侧建立计算列,公式使用大大简化,省略了“填充”或“复制”公式的过程。

快速汇总大提速

劳资统计工作需要进行各种数据汇总,例如在如图2中计算“平均实增金额”和“最大现缴金额”等等。对粗通Excel的小刘来说,自行设计公式确实有一定难度。好在Excel 2007提供的快速汇总功能帮了她的忙,她只需选中“数据特区”中的任意一个单元格,选中“表样式选项”中的“汇总行”复选项,表的下方会出现一个汇总行。

如果小刘需要在图2所示表中计算“平均实增金额”,只要选中“汇总”行与“实增金额”相交处的单元格,单击右下角的下拉按钮打开如图3所示的列表,选择要进行汇总的函数“平均值”,就可以得到“实增金额”列的汇总结果了。选择如图3列表中的“其他函数”,可以打开图4对话框选择更多的函数。

(3)

结构引用更直观

图2表使用“结构引用”既方便了领导审查公式,也方便了小刘设计和修改公式。以在I2单元格中设计“实增金额”计算公式为例,小刘只需选中I1单元格,在编辑栏输入“=SUM()”,然后将光标插入公式的括号中间。由于G2和H2单元格是连续的,选中这两个单元格,编辑栏就会显示公式“=SUM(表3[[#此行],[实增个人储蓄]:[企业金额]])”。如果公式需要引用几个不连续的单元格,光标插入公式之后按住Ctrl键选中一个单元格,输入逗号(,)按住Ctrl键再选中另一个单元格,依次类推就能得到类似“=SUM(表3[[#此行],[企业金额]],表3[[#此行],[实增个人储蓄]])”的公式。

(4)

《Excel输入数据》说课稿 篇4

1. 讲练结合

单就内容而言, 学生掌握起来并不是很难。因此, 在课堂上坚持精讲多练的原则, 重难点知识精讲。

2.任务驱动法

事先设计好的由易到难的任务, 让学生在完成任务的同时, 掌握新课的内容, 解决重点难点。

3.探究法

对于每个操作任务, 鼓励学生思考探究, 独立尝试操作, 自行分析问题并寻求解决问题的方法, 让学生从“学会”转化为“会学”。

说教材

1. 教材处理

本节课要求学生首先掌握E xcel不同类型数据的输入方法, 掌握各种输入数据的技巧。

2. 教学目标

知识目标:掌握不同类型数据输入, 掌握快速输入数据的方法。

能力目标:帮助学生提高处理数据的能力, 培养学生处理信息的能力, 养成良好的思维习惯和行为方式。

情感目标:主要是培养学生的审美意识和养成严谨的学习态度以及团结协作的作风, 在学习过程中体验成功的喜悦和“学有所用”的快乐。

说教学过程

1.导入新课

用大屏幕向学生展示成绩表, 里面有很多相同的数据或有规律的数据, 应该如何输入呢?有没有快速输入方法呢?通过两个提问, 自然引出本节课的内容, 明确了学习任务, 激发学生求知欲, 提高学习兴趣。

2. 角色扮演, 任务驱动

在该环节采用三个任务。三个任务的目的不同, 按照循序渐进的顺序由易到难, 由简单到复杂, 由掌握一般方法到实践应用。下面逐个说明任务的实现方法, 以及如何通过各任务来解决知识的重点、难点。

任务一, 输入不同类型的数据, 目的是让学生理解数据的不同类型, 不同数据类型的不同输入方法。让学生按照大屏幕上给出的数据输入不同类型的数据到E xcel表中。首先要求学生自己输入, 学生会遇到问题, 查课本寻找解决方法。有的学生可能不会邮编这样的字符串的输入方法, 有的学生可能不会分数的输入方法。通过大屏幕给学生展示输入的方法。教师再进行讲解, 问题解决了, 学生会记得更加牢固。这种学生发现问题、师生共同解决问题的方法, 使学生全身心地投入学习讨论中, 发挥了团结协作的力量, 解决了本节课难点。

任务二, 输入学生成绩表, 目的是进一步理解不同数据类型的输入方法, 让学生掌握自动填充的方法, 为多个不相连的单元格输入相同数据的输入方法。学生自己输入, 教师巡回辅导, 发现问题及时解决, 有相同问题, 通过大屏幕演示解决。

通过以上两个任务, 学生学习了数据输入的方法和快速填充数据的方法, 如何引导学生将学会的方法用于实践, 才是关键所在, 所以设置任务三。

任务三, 综合训练。这个任务注重实践应用, 将学到的输入数据的方法用于实践。要求学生输入练习册上的富强公司上半年营业报告, 练习序列填充的方法。综合训练提高了学生的实际应用能力, 引导学生运用先进的信息技术去分析日常中遇到的问题, 将复杂的问题简单直观化, 提高学生运用信息技术与其他学科整合的能力。

3. 归纳总结, 布置作业

EXCEL数据通讯 篇5

1.ASC

用途:将字符串中的全角(双字节)英文字母更改为半角(单字节)字符。

语法:ASC(text)

参数:Text为文本或包含文本的单元格引用。如果文本中不包含任何全角英文字母,则文本不会被更改。

实例:如果A1=excel,则公式“=ASC(A1)”返回excel。

2.CHAR

用途:返回对应于数字代码的字符,该函数可将其他类型的电脑文件中的代码转换为字符(操作环境为MacintoshMacintosh字符集和WindowsANSI字符集)。

语法:CHAR(number)。

参数:Number是用于转换的字符代码,介于1~255之间(使用当前计算机字符集中的字符)。

实例:公式“=CHAR(56)”返回8,=CHAR(36)返回$。

3.CLEAN

用途:删除文本中不能打印的字符。对从其他应用程序中输入的字符串使用CLEAN函数,将删除其中含有的当前操作系统无法打印的字符。

语法:CLEAN(text)。

参数:Text为要从中删除不能打印字符的任何字符串。

实例:由于CHAR(7)返回一个不能打印的字符,因此公式“=CLEAN(CHAR(7)&“text”&CHAR(7))”返回text。

4.CODE

用途:返回文字串中第一个字符的数字代码(对应于计算机当前使用的字符集)。

语法:CODE(text)

参数:Text为需要得到其第一个字符代码的文本。

实例:因为CHAR(65)返回A,所以公式“=CODE(“Alphabet”)”返回65。

5.CONCATENATE

用途:将若干文字串合并到一个文字串中,其功能与“&”运算符相同。

语法:CONCATENATE(text1,text2,...)

参数:Text1,text2,...为1到30个将要合并成单个文本的文本项,这些文本项可以是文字串、数字或对单个单元格的引用。

实例:如果A1=98、A2=千米,则公式“=CONCATENATE(A1,A2)”返回“98千米”,与公式“=A1&A2”等价。

6.DOLLAR或RMB

用途:按照货币格式将小数四舍五入到指定的位数并转换成文字。

语法:DOLLAR(number,decimals)或RMB(number,decimals)。

参数:Number是数字、包含数字的单元格引用,或计算结果为数字的公式;Decimals是十进制的小数,如果Decimals为负数,则参数number从小数点往左按相应位数取整。如果省略Decimals,则假设其值为2。

实例:公式“=RMB(1586.567,2)”返回“¥1586.57”,=RMB(99.888)返回“¥99.89”。

7.EXACT

用途:测试两个字符串是否完全相同。如果它们完全相同,则返回TRUE;否则返回FALSE。EXACT函数能区分大小写,但忽略格式上的差异。

语法:EXACT(text1,text2)。

参数:Text1是待比较的第一个字符串,Text2是待比较的第二个字符串。

实例:如果A1=物理、A2=化学A3=物理,则公式“=EXACT(A1,A2)”返回FALSE,=EXACT(A1,A3)返回FALSE,=EXACT(“word”,“word”)返回TRUE。

8.FIND

用途:FIND用于查找其他文

Excel数据的输入与美化技巧 篇6

假设要在Excel程序中制作一个有关员工销售情况统计的表格,简单的表格输入部分相信难不倒大家。

常规输入:正常步骤

1. 打开Excel程序,系统默认自动创建一个名为“Book1”的文档。定光标在A1单元格,按下键盘输入内容“编号”。

2. 点击键盘中的“Tab”键移动光标到B1单元格,再输入内容“姓名”。重复操作直到如图1所示。

图 1

提示:在单元格中向右移动光标,可用键盘的“Tab”键或向右的箭头;向下移动光标,可用“Enter”键或向下的箭头;而向左或向上移动光标,可用相应的向左的箭头或向上的箭头。

输入技巧1:序列的填充

在图1所示表格中,要在A列中输入每条记录的编号,可用快速的方法:鼠标指针拖动复制即可。

具体操作步骤:

1. 定光标在A2单元格,按下键盘输入内容“1”,移动鼠标指针到A2单元格的右下角,使鼠标指针转变为“+”。

2. 按住鼠标左键向下拖动,直到A6单元格时,释放鼠标左键。

3. 默认状态下,从A2单元格到A6单元格内容全都是1。点击A6单元格右侧的“自动填充选项”智能标记,点击选择展开的下拉菜单中的“以序列方式填充”命令即可完成操作。

图 2

提示1:各种智能标记从Office2002即Office XP开始的高版本软件才有,之前的版本是没有的。

提示2:采用上述鼠标指针拖动的方法复制,可以对数字、日期以及一些特殊的文字,如“一月,二月,三月……”、“星期一,星期二,星期三……”等等内容。

输入技巧2:下拉列表的应用

快速在D4单元格中输入内容“男”的方法,不是重新输入或复制粘贴,而是快捷键。

操作步骤:

1. 由于D2与D3单元格中已经存在下方单元格中要输入的内容,确定鼠标指针在D4单元格,按下键盘的快捷键“Alt”键与向下的箭头,效果如图3所示。

图 3

2. 移动鼠标指针到下拉框中的“男”选项上,单击选择即可完成操作。

提示:上述方法适合于单元格所在列上方已经存在需要输入的内容时使用。

美化技巧:巧用边框与底纹

上述技巧可以让您更轻松地完成表格内容的输入了吧?为了方便大家以后对原始数据的核对,接下来的是如何将该表格中的原始数据强调出来,即边框与底纹的美化技巧。

操作步骤:

1. 在上面制作的表格基础上,我们继续完成其他内容的输入与计算,并选定表格中全部有内容的单元格。

2. 点击“格式”菜单中的“单元格”命令,弹出“单元格格式”对话框,在上方点击切换到“图案”选项卡下,如图4所示。

图 4

3. 在图4中,点击选择颜色“天蓝”,再点击“确定”按钮退出对话框,实现为所选部分加上底纹。

4. 选定“销售额”与“成本”两列的原始数据所在单元格,即D2单元格到E6单元格,点击“格式”菜单中的“单元格”命令,弹出“单元格格式”对话框,在上方点击切换到“边框”选项卡下。

5. 在对话框中,右侧“线条”的“样式”区,点击选择粗直线样式,下方“颜色”下拉框中选择“深蓝”;左侧“边框”区,点击“上边框”按钮与“左边框”按钮应用,现点击“确定”按钮退出对话框。

6. 保持D2单元格到E6单元格的选定状态,再次打开 “单元格格式”对话框,并切换到“边框”选项卡下。

7. 在右侧“线条”的“样式”区,点击选择细直线样式,下方“颜色”下拉框中选择“白色”;左侧“边框”区,点击“下边框”按钮与“右边框”按钮应用,再点击“确定”按钮退出对话框,最终效果如图5所示。

图 5

EXCEL数据通讯 篇7

1方案介绍

将Excel和Win CC软件放在一台工控机内作为操作站, 工控机放置在生产部会议室, 选择一台60英寸的液晶电视作为监视器。此操作站接入生产线局域网, 由生产线中控室操作员汇集相关库位数据, 通过Team Viewer远程控制软件, 远程操作这台计算机, 更改Excel表格库位数据 (见图1) , Win CC画面监控数据随之更新 (见图2) 。这样公司领导及相关人员在每天生产例会上, 都能及时看到生产线各熟料库和水泥库的库位情况, 掌握库位、库空情况, 可以更好地安排生产运营计划。

2方法步骤

首先在生产部会议室设置一台Win CC操作站, 安装windows xp操作系统, 再安装microsoft sql server2005数据库软件及Win CC6.0组态监控软件。之后打开Win CC6.0进行相关设置:

1) 打开Win CC Explorer, 在变量管理上按鼠标右键→添加新的驱动程序“windows dde.ch”。

2) 在DDE上按鼠标右键, 进行新的驱动程序连接。然后点属性, 在连接属性中:“计算机名称”为空;“应用程序”为Excel;“主题”为[]工作表名。Book1.xls为文件名。其界面见图3。

3) 然后按图4和图5所示, 在DDEExcel下建变量, 并设置属性。

图5中, r1c1代表Excel中的单元格位置, r行数c列数。确定后, 重复以上操作可加更多的DDE变量。

这样就把汇集的相关库位Excel表格数据链接到Win CC6.0组态监控软件中, 从而将Excel表格数据转化为显示直观的Win CC监控画面。

3效果

Excel平台的数据分析 篇8

关键词:数据分析,Excel,大数据

1 数据分析

纵观计算机发展历史, 无论是计算机硬件改革还是软件推出新产品新版本, 主要体现在各行各业的应用领域中, 以解决更多实际问题, 提高工作效率;多年实践经验与研究, 感悟计算机应用领域中最重要、最普及的数据处理与数据分析。

数据分析是将一大批零散、凌乱、无关联的数据进行整理、归类和提炼, 以获取数据内在规律、联系, 推断出发展趋势与展望, 是从数据要信息, 为决策提供依据。

数据分析是使用统计方法对目标数据进行分析, 将这些数据整理、筛选、分类、汇总处理, 以获取最大的数据利用, 挖掘数据深层次的有用信息, 形成分析结论并展现其过程、规律与变化。

数据分析过程包含以下几个方面:数据分析的目的与内容、数据收集、数据整理、数据分析、数据展现与数据分析报告, 首先明确项目分析的目标、清楚功能和用户要求、数据量充实全面, 然后采用最佳的、最合适的数据分析方法来实现。

数据收集是按照数据分析的目标, 收集人员数据、业务数据、市场数据等为数据分析提供原始素材和依据, 无论是直接和间接数据, 无论是以文本形式保存, 还是以Excel、Word或数据库方式保存的数据, 它们相互之间是可以转换的。

数据整理是对收集的数据需要规范处理、统一格式、符合数据分析的模式, 其过程将从大量不规则的数据中提取有效数据, 实现必要的格式化、类型转换、建立关联、排序、分类汇总和简单计算等处理。

数据分析是通过统计运算、常用分析模型、分析工具和数据挖掘等技术, 寻找数据内部的关联、规律和变化趋势, 为问题解决、多种方案比较和决策等提供支撑数据。正确的数据分析方法、从哪些侧面去分析、关注哪些数据的动态变化都是需要仔细考虑和甄别, 他人经验与自己创新结合, 获取一套行之有效的优秀思路与分析方法。

数据展现是将数据分析结果或需要表达的内容通过适当的图表类型和相关文本展示出来, 把数据之间的关联、规律与变化明确显示出来, 以图表说话, 一目了然, 吸引关注。数据分析是数学与计算机科学相结合的, 与时俱进, 才有了大数据时代更为强大的数据分析工具和威力。

2 Excel数据分析功能

Excel 2013可视化工具能帮助用户分析信息, 做出商业或管理方面的明智决策。若与Excel Services一起使用, 可以强有力地与同事、客户和合作伙伴一起共享和管理业务分析、进行深入了解。Excel 2013有十种主要方式帮助用户更有效地创建电子表格, 数据分析、数据共享和管理信息。

大容量的电子表格中使创建、导入、浏览和分析大量数据更加便捷可行。在Excel 2013中可以处理大量数据, 它支持的每张工作表可以包含多达100万行和16000列的数据;Excel 2013还支持多核处理器平台以提高公式密布的电子表格的计算速度。

利用完全重新设计的制图引擎和具有专业外观的图表中实现分析和交互信息。通过Office Fluent用户界面中的制图工具, 仅单击鼠标即可创建具有专业外观的图表;还可以在图表中应用丰富的视觉增强效果, 例如, 三维效果、柔和阴影和透明效果。

利用“表”对象的改进支持增强了电子表格的功能。由于Excel 2013显著改进了对“表”的功能支持, 可以在Excel公式中创建、扩展、筛选和引用表的功能, 还可以设置表的格式化。在浏览大型表格中的数据时, Excel 2013在滚动表的数据时仍能在屏幕上保留表的标题, 类似于拆分与冻结功能。

轻松创建排序、筛选、分类汇总和交互式数据透视表和透视图。使用排序、筛选、分类汇总可以实现一般数据分析与统计, 其功能随着版本更新而增强, 使用数据透视表可以快速创建各种报表格式, 便捷地拖动字段布局位置以构成新的报表、新的数据分析结果以展现数据相互关联, 并凸显关注的数据侧面。

根据数据“展示”重要趋势寻找数据逻辑关联。利用Excel 2013条件格式功能可以实现由数据找出内在关联模式和突出显示某种特殊趋势, 此功能包括颜色渐变、图标集、数据条和色阶等, 出此以外, 若应用函数到条件格式, 其功能更为强大, 为数据分析提供极大便捷。

大量不同功能的函数提供个性化数据分析工具。函数是Excel主要数据分析工具之一, 由于函数在数据分析中起到灵活多变的作用, 用来解决个性化、特殊要求或复杂的数据分析问题;函数使用面很广, 除了正常使用在单元格和数据区域外, 还可以使用在排序、条件格式、数据有效性、名称、图表、数据透视表等工具上, 后者使用为Excel带来了锦上添花的作用与美妙效果。

使用Office Excel 2013和Excel Services有助于更加安全地与其他人共享电子表格。Excel Services是Microsoft Office Share Point Server 2013的一种功能, 它以HTML格式动态地呈现电子表格, 因此可以使用Web浏览器访问信息。由于与Excel 2013客户端的保真度很高, 因此, Excel Services用户可以在Web浏览器中进行浏览、排序、筛选、输入参数以及与数据透视表视图进行交互数据的操作。

分析工具库提供先进的数据分析。Excel提供了三类数据分析工具:假设分析、规划求解和数据分析工具库。掌握各种分析工具的基本操作, 灵活地运用它们, 以常用的数学统计模型和分析模型实现数据分析。

由于Excel 2013完全支持Microsoft SQL Server2005 Analysis Services从而使商业智能投资得到扩展。可以使用Excel 2013的灵活性和新的多维函数, 从OLAP数据库中创建自定义报表。使用数据连接库, 还可以更轻松地连接到外部数据源。

来自Office应用程序插件。以前需要下载第三方插件软件现在已经安装在Office 2016版本支助, 加载或直接可以应用, 例如, 图表Infogram for office提供了30种原Excel难以实现的图表类型;插件People graph可以实现数据与小人组成图表同步变化;Pro World Cloud插件实现以字体云方式对输入文字的字频显示其字体大小等。

3 Excel数据分析案例

这是某公司某年1到12月份各项经费使用情况数据表 (见图1) , 针对这个数据表, 若需要进行数据分析, 应该怎样入手、关注什么呢?重点是首行与最左列的数据, 首行是关于日期的月份, 一年的12个月;最左列是各项费用名称, 它们的相交单元格是货币数据, 那么我们首先是实施趋势分析, 每项费用在12个月中是如何变化?然后观察结构分析, 所有项费用在某月使用的状况, 最高或最低, 支出是否正常?

我们需要创建两个图表 (见图2) , 使用Excel“组合框”控件选择不同费用, 差旅费或不同月份, 不同费用在不同月份的情况、变化趋势或结构分析。

生成左图表, 首先要创建数据区域 (见图3上部分) , 其中单元格B38绑定组合框控件, 使用Index函数获取来源于“源数据”工作表里不同费用的数据;单元格C38为图表标题而设置, 这样标题是动态的, 随着组合框选择内容而变化来设置图表标题, 选中它, 在编辑栏输入公式:=分析报告!$C$37;

生成右图表, 使用VLOOKUP和MATCH函数创建数据区域 (见图3下部分) , 其中单元格B41绑定组合框控件, 单元格C41为图表设置动态标题。

此时, 一旦选择左图表中组合框的其他费用选项, 即可以浏览其他费用在1~12月份支出情况, 最大与最小花费月份一目了然, 凸出显示某月的活动或投入状况;右图表展示了某月份各项费用支出的比例, 扇区大小表示了费用多少, 清晰明了、直接便捷呈现数据之间的关联和变化趋势。

4 结语

EXCEL数据通讯 篇9

本文介绍在.Net环境下, 使用C#语言实现大数据量Excel数据导入SQL Server的一种新系统。该系统采用多线程技术, 最大限度的发挥计算机性能, 提高了大数据量的Excel外部数据文件加载到内存的效率;并且使用新的Merge技术, 加快了数据库端不同数据表之间的数据同步过程。该系统实现了全自动化的录入信息, 并且方便了录入数据后的查询、备份、挖掘和分析, 减轻了工作人员的工作量, 有效地提高了工作效率。

1 概述

简单地讲, Excel表格数据导入SQL Server可以分为三个步骤, 其系统结构图, 如图1所示。

(1) Excel数据文件加载到内存数据库中。

(2) 内存数据库到SQL Server的转存过程。

(3) 数据库端的临时表与目标表之间的数据合并同步过程。

本系统在上述三个步骤中, 分别采用目前先进的技术来提高执行效率, 从而提高整个系统的导入效率。下面进行详细的叙述。

2 关键技术

(1) .NET平台。.Net Framework是微软公司Windows操作系统的组件, 该组件使软件应用程序和Web服务的建立更加容易, 其对于软件开发的支持提供了许多新特性, 并基于该平台推出了包括Visual C++.NET、Visual Basic.NET和Visual C#.NET等开发工具。其中, C#是微软力推的.NET标准开发语言, 具有很多众所周知的优点。因此, 关于C#应用开发的帮助文档及相关文献资料较为广泛且全面[1]。

(2) OLEDB组件。ODBC.NET是ODBC数据库通信标准的.NET升级, 同时也是微软的战略性的通向不同的数据源的低级应用程序接口。OLE DB不仅包括微软资助的标准数据接口开放数据库连通性 (ODBC) 的结构化查询语言 (SQL) 能力, 还具有面向其他非SQL数据类型的通路。因此, 出于应用开发的数据库通用性和维护升级和长远考虑, Ole DB.NET是较为理想的选择[1]。

(3) Sql Bulk Copy类。Sql Bulk Copy类提供了一种将其他源的数据批量复制到SQL Server数据库表中高性能的方法。Sql Bulk Copy包含可以重载的方法WriteTo Server, 它用来从其他数据源复制数据目的地。SqlBulk Copy复制数据的原理是采用SQL Server提供的Bcp命令提示符读取到内存数据库 (Data Set) 中, 用工具进行数据的批量复制。Bcp在SQL Server实例和数据文件之间以用户指定的格式复制数据[2]。

(4) 多线程技术。多线程是为了同步完成多项任务, 不是为了提高运行效率, 而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。使用C#编写任何程序时, 都有一个入口:Main () 方法。程序从Main方法的第一条语句开始执行, 直到这个方法为止, Main () 方法的执行是在一个线程中即主线程[3]。在信息系统的应用程序中, 导入的数据量比较小时, 基本上不需要使用多线程, 但当导入的数据量较大不使用多线程技术就会产生“假死”现象, 而使用多线程可以很好地解决这一问题[4]。

(5) 数据库中的Merge技术。Merge关键字是一个神奇的DML关键字。它在SQL Server 2008被引入, 它能将Insert, Update, Delete简单的并为一句, 根据一个源数据表对另一个数据表进行确定性的插入、更新和删除这样复杂的操作。例如, 根据在两个表中找到的差异行在其中一个表中进行插入、更新或删除行, 可以对两个表进行同步。Merge的高效在于它仅需要一次全表扫描即可完成全部工作。Merge语句还有一个强大的功能是通过OUTPUT子句, 可以将刚刚做过变动的数据进行输出至另一张数据库表中。

3 系统设计

大数据量Excel数据导入系统的系统流程图, 如图2所示。

该系统中所涉及三个关键步骤的详细说明如下:

(1) Excel数据文件加载到内存数据库 (Data Set) 中。该系统将采用多线程技术来将Excel数据文件加载到内存中。通过OLEDB技术读取Excel文件的大小、Excel文件中Sheet数目, 以及每个Sheet中的数据行总数, 来确定生成线程的数目和Datatable的数目, 然后每个线程读取部分数据到各自对应Datatable中。

(2) 内存数据库 (Data Set) 到SQL Server的转存过程。该系统将采用Sql Bulk Copy将Data Set中的数据进行批量复制到数据库的临时表中。在步骤 (1) 中, 当Data Set中的数据量超过一定界限时, Excel数据读取线程全部暂停, 执行步骤 (2) , 然后清空Data Set中的数据, 继续执行步骤 (1) , 直到所有数据都转存到数据库中的临时表中。

如果在执行过程中, 由于新导入的数据在主键列上有重复数据导致Sql Bulk Copy的Write To Server方法出错时, 系统将捕获异常, 然后在异常处理中, 采用折半的方式批量复制数据到临时表, 直至剩下出错的记录返回个客户端。

(3) 数据库端的临时表与目标表之间的数据合并同步过程。该系统中采用SQL Server中的Merge技术, 步骤 (2) 中新生成的临时表与系统中原有的目标表中的数据进行一次同步, 如果数据已存在, 该记录将被更新, 如果记录不存在, 插入新纪录。Merge语句还有一个强大的功能是通过OUTPUT子句, 可以将刚刚做过变动的数据进行输出至另一张数据库表中。

4 性能分析

大数据量Excel数据导入系统, 在数据导入方面的性能有了很大的提升。主要体现在以下两点:

(1) 高效性。多线程技术的使用以及对线程数目的控制, 缩短了Excel文件数据加载到内存的时间。在Excel文件数据量小时, 由于使用多线程增加了资源的开销, 导致执行效率反而不如单线程的执行效率的情况, 本系统同样做了判断处理。Sql Bulk Copy的使用极大的提高了数据从内存到数据库的转存的执行效率。Sql Bulk Copy采用的的SQL Server的Bcp命令。Bcp命令在SQL Server实例和数据文件之间复制数据的效率非常高。本系统并没有单独进行新导入数据的查重检测, 而是在导入失败后的异常处理中采用了折半导入的方式来找到出错数据行, 在导入的同时查找重复的数据, 缩短系统执行时间。本系统中同样摒弃了费时且根本无法完成大容量数据合并的编程循环SQL语句转换插入方式, 采用的新的Merge技术。Merge技术在两个表之间的数据同步的过程中执行效率非常高。

(2) 安全性。在数据转存到数据库的过程中, 该系统并没有直接对系统中的目标表进行操作, 取而代之的是将新导入的数据放到临时表中。如果导入数据出错只需要将临时表数据清空即可, 并不需要对目标表进行操作。Merge技术中的OUTPUT功能能够把更新过的记录行输出到另一张数据库表中, 为日后的查看修改记录提供了方便, 增强了导入数据安全性。

5 测试结果

5.1 测试环境

硬件:PC (CPU:Intel (R) i3-2350M CPU@2.30 GHz;内存:2 GB, DDR3;硬盘:5 400 R/S) 。软件:Windows7家庭版 (X64) ;SQL Server R2 (X64) ;VS2012 (X64) 。

5.2 测试结果

系统测试结果, 如表1所示。

ms

步骤 (1) 使用单线程与多线程对比测试结果见表2。

ms

步骤 (2) 中使用Sql Bulk Copy与其他方法对比的测试结果, 如表3所示。

步骤 (3) 中使用Merge与游标逐条插入对比的测试结果, 如表4所示。

5.3 结果分析

步骤 (1) 中外部文件数据加载至内存时间明显缩短, 但数据量成倍增加时, 运行时间并没有成倍增加, 可见在数据量越大, 多线程的优势更加明显。步骤 (2) 中SqlBulk Copy导入效率在同样数据量情况下与其他相比有了明显提高。步骤 (3) 的Merge在百万级大表合并效率非常高, 同时在合并过程中, 表的列数以及对目标表的insert数目和update数目都会影响Merge的执行时间。综上所述, 系统执行时间明显缩短, 达到了预期的效果。

6 结语

大数据量Excel数据导入系统, 实现了高效安全的数据导入功能。在大数据时代, 如何能将大数据量外部文件数据导入到数据库中, 方便导入数据后查询、备份、挖掘和分析一直是人们研究的焦点问题。该系统为这一问题提供了一种可行的方案, 具有一定的实用价值。

摘要:针对现有大数据量Excel导入系统效率较低的问题, 设计并实现了一种新的大数据量Excel数据导入系统。该系统采用C#语言, 在VS2012的开发环境中, 利用多线程技术将大数据量Excel表格数据导入到SQL Server中, 加快了信息导入的速度。并且在临时表与目标表之间的合并过程中, 摒弃了传统的游标逐条插入方式, 取而代之的是SQL Server 2008中的Merge技术, 极大地加快了数据库端不同表之间数据的同步过程。实验测试结果表明, 整个系统导入100万条数据耗时9 534 ms, 远少于传统Excel导入系统所耗时间, 有效提高大数据量Excel导入系统的效率。

关键词:大数据量,Excel,SQL Server,多线程,Merge

参考文献

[1]乔治强.基于C#的Excel数据导入导出SQL Server技术研究[J].电脑知识与技术, 2012 (26) :195-196.

[2]刘小豫, 赵蔷.基于C#的Excel数据导入导出SQL Server的研究与实现[J].中小企业管理与科技, 2012 (31) :287-288.

[3]王毅飞.基于.Net的Excel和数据库数据转换[J].计算机时代, 2013 (5) :33-36.

[4]罗琴媚.千万级大表转换导入的实现研究[J].计算机光盘软件与应用, 2013 (6) :288-289.

[5]HILLAR G C.C#并行编程高级教程[M].北京:清华大学出版社, 2012.

[6]王旭辉.Excel数据导入数据库的设计与实现[J].现代电子技术, 2013, 36 (12) :71-73.

EXCEL数据通讯 篇10

关键词:XML,元数据,Excel,报表,XPath

0 引言

为进一步提高地质工作服务国民经济和社会发展的能力, 充分发挥地质资料信息的服务功能, 国土资源部决定推进地质资料信息服务集群化产业化工作, 从而解决地质资料管理方面长期存在资料信息分散、综合研究不够、数字化信息化程度不高等问题[1]。长期以来, 国内各地质单位所管理的地质调查数据资料以各种形式存储, 常见的有Excel报表形式。为了能够将各种样式的报表数据导入统一的数据库中, 方便地质资料的共享, 需要开展对复杂格式Excel报表导入数据库的研究。由于报表的形式过于灵活, 通用的方法是将其中的信息提取出来并存储至数据库或者其他文件中, 以便于储量评价系统能够方便的使用。本文介绍了Excel报表信息转储的元数据模型, 该模型使用XML来描述。利用该元数据模型, 能够通过通用的导入程序实现Excel数据到数据库或者文件的转储。并且通过结合XPath技术, 该元数据模型能够支持对Excel报表中数据正确性和一致性的校验。

1 基于元数据的解决方案

1.1 传统的Excel转储方案

对于大批量的Excel报表数据的转储方案, 如果采用人工逐个录入的方式无疑既费时又费力, 而且又难保证正确性, 这对一个完整的软件系统来说是无法接受的。另一个方案是可以采用批量导入的方式, 即编写程序读取Excel中的信息并将其存储为指定格式。但是由于报表的种类繁多、变化性比较大, 如果将报表的逻辑都固化在应用程序中会使得应用程序难以维护、扩展性差, 无法适应用户不断变化的要求。有一些较为成熟的数据库系统如Oracle、SQL Server等有自带的数据导入程序能够自动导入Excel数据。但是该方法同样存在很多缺点, 比如:导入程序对Excel数据的存储格式要求得比较严格, 无法适应较为复杂的报表;只能作为Excel同指定数据库之间的转储中介, 而无法将Excel数据存储为文本或者其他格式;不支持数据校验, 无法保证数据逻辑上的完整性。

1.2 元数据方案

1) 元数据

鉴于传统的Excel转储方案有种种缺点, 无法适用于灵活的报表信息提取, 本文提出了基于元数据的Excel报表信息转储策略。元数据是对数据资源的描述, 也可被解释为data about data, 即关于数据的数据。元数据是信息共享和交换的基础和前提, 用于描述数据集的内容、质量、表示方式、空间参考、管理方式以及数据集的其他特征[2]。在软件构造领域, 元数据在程序中通常不是被加工的对象, 而是通过其值的改变来改变程序的行为的数据。

因此, 本文利用元数据来描述Excel报表的特征, 使得报表转储程序能够根据元数据的变化动态的适应于不同的报表文件, 达到以不变应万变的目的, 使得系统能从报表的逻辑中分离出来, 做到了高内聚、低耦合的设计, 最大限度地达到了软件复用的目的。

2) XML

XML是一种可以用来创建标记, 并给标记赋予语义的元语言。随着XML技术及相关标准的成熟, 其很快就成为了信息交换的标准, XML用于信息交换主要有以下几个方面的优势: (1) 可扩展性:允许根据需要定义新的标记的能力, 使其能够以意义明确的方式将不同数据结构保存在一起; (2) 自我描述性:支持丰富的数据类型, 能够很好地表现许多复杂的数据关系, 使得基于XML的应用程序可以准确高效地搜索相关的数据内容; (3) 简单性:XML文档是能进行文件结构合法性验证的纯文本文档, 易于传输和操作[3]。因此, 本文利用XML作为元数据的描述语言, 结合了XML自身的特点以及元数据的重要意义, 其优越性和作用十分显著。

3) 数据校验

地质资料数据的共享, 首先必须保证所共享数据的正确性和有效性。由于参与Excel报表数据编写的人员众多、使用习惯差异较大, 再加上数据误差等因素, 难免造成数据缺失、不一致甚至出错等情况。如果等到数据存入数据库后再进行数据校验, 那么校验和数据修订的难度将大大增加, 并且也无法做到从数据源头来控制数据的正确性。为了能及时发现数据中的错误, 最大程度上保证所要转储数据的完整性、合理性, 需要在数据转储过程中加入对数据的校验。系统还可以通过数据校验来锁定数据错误, 并生成错误报告返回给数据提供人员, 以便及时修正。引入元数据和数据校验的报表转储流程如图1所示。

2 XML元数据模型设计

2.1 分块模型

每个Excel文件都是由多个工作表 (Worksheet) 组成, 每个工作表包含了许许多多的单元格并且都可以存储独立的数据, 并且一个报表对应一个工作表。因此, 用来描述Excel报表信息的元数据被看作是和工作表一个级别的, 也就是说每一个工作表 (报表) 对应一个元数据文件。这样, 首先解决了元数据文件的描述粒度问题。

对于工作表中的报表而言, 因其应用不同导致格式千差万别。总体上来说, 报表的格式设计是偏向于用户使用习惯的, 首要目的是考虑到用户输入数据的便捷性。而目的数据源, 如数据库的逻辑结构设计是从业务逻辑和软件系统设计的常理进行抽象的, 其设计的目的是在保证业务逻辑不变的前提下, 高效的存取数据。因此, 当报表中的数据映射到目的数据源时, 有可能出现一对多的情况, 即同一张报表的数据有可能将转储至数据库的多张表或者多个目的文件。本文采用了分块处理报表的方式, 每一块对应一个目的数据文件或者数据库中的一张表, 一个报表至少由一个分块组成, 示意如图2所示。

在XML元数据中, 用节点作为整个XML文件的根节点, 对应一个报表。节点代表报表中的分块并作为节点的子节点。这样, 每一个元数据文档中的节点就包含了一个或者多个节点, 代表报表的一个或多个分块。

分块对应的目的数据源描述信息记录在节点的子节点中, 包含两个可选的子节点。当目的数据源是数据库时, 中记录的是数据库表名称;当目的数据源是文件时, 中记录的是文件的路径。

2.2 单元格模型

组成Excel报表的最基本数据存储单元就是Excel单元格。单元格模型就是对单元格的属性和行为进行抽象来描述单元格。在报表中, 单元格通常具有如下属性:

a) 以行列的形式分布, 行用“A、B、C、D、E、…”编号, 列用阿拉伯数字编号, 因此报表中的每个单元格都有一个唯一位置码类似于:A3、B10等;

b) 一个单元格只能记录一个数据, 多个同一类型的数据通常被记录在一行或一列单元格中, 因此单元格有三种数据延伸方式:列延伸、行延伸和单格方式;

c) 单元格中数据表示的意义;

d) 单元格对应的目的数据源表格的列名称, 对于数据库来说就是数据表的字段名, 对于文件就是列号或者列名称。

在单元格模型中, 用代表一个单元格, “id”作为的一个属性来标识唯一的一个单元格节点。表1列举了的所有子节点, 这些子节点较为完整地描述了单元格所具有的属性。

2.3 数据校验模型

1) 校验类型划分

数据校验是基于单元格数据的校验。校验模型处理两种类型的校验:数据物理校验和上下文校验。所谓数据物理校验就是对单元格数据本身格式的校验, 包括数据类型校验、非空校验等, 该校验不关心数据的真实含义;上下文校验是对报表内部数据逻辑一致性的校验, 校验数据的合理性。

数据校验在元数据中的根节点为, 它是作为单元格节点的子节点存在的。及其子节点的关系如图3所示。

2) 数据物理校验

节点代表数据物理校验。非空校验用节点描述, 是数据物理校验的一种, 它用来校验指定单元格中的数据是否为空。报表中的某些关键信息, 例如描述钻孔工程信息的钻孔工程号、坐标等信息是不允许为空的, 由此系统能根据元数据模型发现上述信息为空的情况并提示。把非空校验放在数据读取时而不是数据存储时刻可以方便定位错误源以便于修改。

数据类型校验用节点描述, 用来校验指定单元格的信息是否为字符、数字或者浮点格式。

3) 上下文校验

通常情况下, Excel报表中各单元格数据并非是相互独立的, 而是彼此之间存在关联, 或者同外部数据存在关联, 如表2所示。

物理校验用于校验单元格自身数据的合法性, 而对于存在关联的单元格之间的一致性则需要通过上下文校验来实现。

节点代表上下文校验。节点是校验单元格数据范围的。例如, 在一个特定的工程中, 报表中的坐标信息不应该超出一个区域范围。节点分别定义了指定单元格应遵守的数据范围, 超出范围的数据都会被认为是不合法的。例如, 某勘探区钻孔工程孔口X坐标应该位于3120.0与3670.5之间, 那么该数据的上下文校验节点记为:

分别表示当前单元格中的数值应该等于、大于或者小于另一个单元格中的数值。另一个单元格是利用XPath语言结合参数节点来获得的。

XPath是W3C制定的一个标准, 其目标是定义一种定位XML文档各个部分的语言[4]。在XPath中, 用 (/) 连接符连接分开的单步构成位置路径表达式, 它指向一个节点或者一组节点。如果XPath的开头是一个斜线 (/) 就代表这是绝对路径。如果开头是两个斜线 (//) 就表示文件中所有符合模式的元素都会被选出来, 即使是处于树中不同的层级也会被选出来。除了选择元素以外, 也可以选择属性。属性都是以@开头。在本文中, 表示单元格节点的属性“id”。在XPath语言中, 通过唯一属性“id”就能找到描述该单元格的节点。例如, 查找单元格节点属性id为2的节点的XPath语言为://Grid[@id='2']。再通过中描述的偏移量就能根据单元格的延伸方式在Excel报表中唯一的确定一个格子, 示意如图4所示。

以地层描述数据报表为例, 相邻地层中, 上面地层的底板深度应该等于下面地层的顶板深度, 描述上地层底板深度的上下文校验节点记为:

2.4 应用现状

在为全国地质资料馆建设地质资料数字资源仓储系统过程中, 各地质资料持有单位共提交了1百多种格式的Excel报表共计1万余份, 其中90%的报表都是不规则格式报表。按照本文中的方法给每一种报表格式编写与其对应的元数据模板, 然后采用统一的导入模块即可将各种格式的Excel报表导入数据库, 表3是该方法同其他两种报表转储方法效果对比表。

采用上述元数据模型的报表转储系统作为全国地质资料馆地质资料数字仓储系统核心模块的一部分, 如图5所示, 用户既可以利用Web提交报表远端数据库, 也可在本地将报表转为指定格式的文件。二者都会生成校验信息返回给用户以方便用户及时修正数据。

3 结语

该元数据模型的可行性已经在实践中得到了很好的验证。原始数据对信息系统的重要性决定了该模型具有很强的通用性。目前, 该模型在数据校验方面尚不能引入外部数据文件作为校验约束, 有待在今后的研究工作中进一步完善。

参考文献

[1]姚华军, 贺冰清, 曹献珍.推进地质资料信息服务集群化和产业化的研究[J].中国国土资源经济, 2009, 22 (9) :4-7.

[2]金均强, 王艳东, 龚健雅.基于元数据的空间数据管理分发系统的设计与实现[J].测绘信息与工程, 2005, 30 (5) :26-28.

[3]张德华.基于XML信息交换系统的设计与实现[J].计算机与网络, 2011 (1) :57-59.

[4]王宗杰, 侯贵法, 王成耀, 等.基于元数据的分布异构数据集成研究[J].软件时空, 2007 (23) :211-213.

[5]孙志东, 潘懋, 吴自兴, 等.基于XML的地理信息元数据及空间数据安全[J].测绘通报, 2007 (9) :61-63.

EXCEL数据通讯 篇11

关键词:EXCEL表格;数据处理;技巧

中图分类号:G710 文献标识码:B 文章编号:1002-7661(2014)16-017-01

EXCEL电子表格软件是一种以“表格”形式管理和分析数据的软 件。利用它可以简便快捷地实现各种数据处理、分析、管理和共享,非常适合财政、金融、统计、管理等。

1、表1要求当“销售额”大于60000时“业绩评价”为“优”,当“销售额”小于30000 时,“业绩评价”为“差”;其余的情况“业绩评价”为“一般”( 注: C列为“业绩评价”表中省略)。此题可以用EXCEL中IF函数来实现。操作方法是: 在EXCEL电子表格 C2 单元格中输入如下公式:=IF( B3 < 30000,″差″,IF( B3>= 60000 =,“优” =,“一般”),然后将此公式向下复制到C列其他单元格中(C2 : C10) 即可以完成操作。

2、表 2 要求计算出各种材料“2季度销售额”比“1季度销售额”的最大增长幅度值。具体操作方法按CTRL+ F3组合键给B列(B2:B9)命名为“1季度”(当然也可以定义成别的名称),给C列数据 (C2 : C9)命名为“2季度”,如果将最大增长幅度值放在C10单元格内,则在C10中输入以下公 式:=MAX(2季度-1季度)然后按CTRL+SHIFT+ENTER。

3、表 3 中有一个“得分”数据列,要求:如何一次性找出所有得分低于平均成绩的人员。我们可以用EXCEL中高级筛选的方法找出这些人员,筛选条件为“得分<平均分” ,其中“平均得分”可通过函数AVERAGE对″得分″列的计算值(注: C列为得分判断表中省略)。方法是在C1:C2中定义条件区域内容: (1)在C1单元格中输入“得分判断”;(2)在C2单元格中输入公式:= B3 < AVERAGR($B$3:$B$ 13);(3)执行“数据”菜单中的“筛选”子菜单的“高级筛选”命令;(4)在对话框中选择“将筛选结果复制到其他位置”单选框,选 择 C1 : C2为条件区域,指定筛选结果复制位置,按“确定”,此时在指定位置即可一次性地显示出所有得分小于平均值的人员。

4、表4要求给每个人工资增加10% 。对此题如果只是简单地利用EXCEL公式在C2单元格中输入公式C2=C2 * (1+ 0.1),那么你会得 到EXCEL的一个错误提示,因为该公式造成了死循环。我们可以用“选择性粘贴”解决这个问题 ,方法如下:(1)在D2单元格中输入公式:D2=C2 *(1 +0.1),然后将此公式向下复制到D列其他单元格内 (注: D列为输入公式表中省略);(2)选中区域D2:D12进行复制;(3)选中区域C2:C12,单击鼠标右键,在弹出的对话框中单击“选择性粘贴”,在再次弹出对话框中选择“粘贴”标签中的“数值”,按确定 即可;(4)删除D列内容,如果将此题改为:给每个“工程师”工资增加10元。方法如下:(1)利用“数据”菜单中“筛选”子菜单中的“自动筛选”命令选出所有的“工程师”;(2)在D2单元格中输入100;(3)把鼠标放在D2的右下角,”待其变成“+”字形后,往下拉,直到D2:D12都变成100;(4)选择区域D2:D12单击鼠标右键,在弹出的快捷菜单中选“复制”;(5)选择C2:C12区域,单击鼠标右键, 在弹出的对话框中单击“选择性粘贴”,在弹出的对话框中选择“运算”标签中的“加”,按确定;(6)最后删除D列内容即可。

参考文献:

[1] 木又木人.巧用EXCEL表格制作席卡[J].电脑迷.2008(17)

[2] 颜颖智.EXCEL表格中输入分数的六种方法[J].农村财务会计.2007(04)

[3] 侯爱莲.EXCEL表格实用技巧例解[J].计算机系统应用.2001(02)

摘 要:EXCEL电子表格软件是一种以“表格”形式管理和分析数据的软件,它的操作对象是屏幕上的一张网络表,称为工作表。EXCEL能完成对表格中数据的录入、编辑、计算、检索及文档理、数据共享等强大功能,操作直观方便,所以越来越多的人都喜欢用它来制作表格和处理数据。

关键词:EXCEL表格;数据处理;技巧

中图分类号:G710 文献标识码:B 文章编号:1002-7661(2014)16-017-01

EXCEL电子表格软件是一种以“表格”形式管理和分析数据的软 件。利用它可以简便快捷地实现各种数据处理、分析、管理和共享,非常适合财政、金融、统计、管理等。

1、表1要求当“销售额”大于60000时“业绩评价”为“优”,当“销售额”小于30000 时,“业绩评价”为“差”;其余的情况“业绩评价”为“一般”( 注: C列为“业绩评价”表中省略)。此题可以用EXCEL中IF函数来实现。操作方法是: 在EXCEL电子表格 C2 单元格中输入如下公式:=IF( B3 < 30000,″差″,IF( B3>= 60000 =,“优” =,“一般”),然后将此公式向下复制到C列其他单元格中(C2 : C10) 即可以完成操作。

2、表 2 要求计算出各种材料“2季度销售额”比“1季度销售额”的最大增长幅度值。具体操作方法按CTRL+ F3组合键给B列(B2:B9)命名为“1季度”(当然也可以定义成别的名称),给C列数据 (C2 : C9)命名为“2季度”,如果将最大增长幅度值放在C10单元格内,则在C10中输入以下公 式:=MAX(2季度-1季度)然后按CTRL+SHIFT+ENTER。

3、表 3 中有一个“得分”数据列,要求:如何一次性找出所有得分低于平均成绩的人员。我们可以用EXCEL中高级筛选的方法找出这些人员,筛选条件为“得分<平均分” ,其中“平均得分”可通过函数AVERAGE对″得分″列的计算值(注: C列为得分判断表中省略)。方法是在C1:C2中定义条件区域内容: (1)在C1单元格中输入“得分判断”;(2)在C2单元格中输入公式:= B3 < AVERAGR($B$3:$B$ 13);(3)执行“数据”菜单中的“筛选”子菜单的“高级筛选”命令;(4)在对话框中选择“将筛选结果复制到其他位置”单选框,选 择 C1 : C2为条件区域,指定筛选结果复制位置,按“确定”,此时在指定位置即可一次性地显示出所有得分小于平均值的人员。

4、表4要求给每个人工资增加10% 。对此题如果只是简单地利用EXCEL公式在C2单元格中输入公式C2=C2 * (1+ 0.1),那么你会得 到EXCEL的一个错误提示,因为该公式造成了死循环。我们可以用“选择性粘贴”解决这个问题 ,方法如下:(1)在D2单元格中输入公式:D2=C2 *(1 +0.1),然后将此公式向下复制到D列其他单元格内 (注: D列为输入公式表中省略);(2)选中区域D2:D12进行复制;(3)选中区域C2:C12,单击鼠标右键,在弹出的对话框中单击“选择性粘贴”,在再次弹出对话框中选择“粘贴”标签中的“数值”,按确定 即可;(4)删除D列内容,如果将此题改为:给每个“工程师”工资增加10元。方法如下:(1)利用“数据”菜单中“筛选”子菜单中的“自动筛选”命令选出所有的“工程师”;(2)在D2单元格中输入100;(3)把鼠标放在D2的右下角,”待其变成“+”字形后,往下拉,直到D2:D12都变成100;(4)选择区域D2:D12单击鼠标右键,在弹出的快捷菜单中选“复制”;(5)选择C2:C12区域,单击鼠标右键, 在弹出的对话框中单击“选择性粘贴”,在弹出的对话框中选择“运算”标签中的“加”,按确定;(6)最后删除D列内容即可。

参考文献:

[1] 木又木人.巧用EXCEL表格制作席卡[J].电脑迷.2008(17)

[2] 颜颖智.EXCEL表格中输入分数的六种方法[J].农村财务会计.2007(04)

[3] 侯爱莲.EXCEL表格实用技巧例解[J].计算机系统应用.2001(02)

摘 要:EXCEL电子表格软件是一种以“表格”形式管理和分析数据的软件,它的操作对象是屏幕上的一张网络表,称为工作表。EXCEL能完成对表格中数据的录入、编辑、计算、检索及文档理、数据共享等强大功能,操作直观方便,所以越来越多的人都喜欢用它来制作表格和处理数据。

关键词:EXCEL表格;数据处理;技巧

中图分类号:G710 文献标识码:B 文章编号:1002-7661(2014)16-017-01

EXCEL电子表格软件是一种以“表格”形式管理和分析数据的软 件。利用它可以简便快捷地实现各种数据处理、分析、管理和共享,非常适合财政、金融、统计、管理等。

1、表1要求当“销售额”大于60000时“业绩评价”为“优”,当“销售额”小于30000 时,“业绩评价”为“差”;其余的情况“业绩评价”为“一般”( 注: C列为“业绩评价”表中省略)。此题可以用EXCEL中IF函数来实现。操作方法是: 在EXCEL电子表格 C2 单元格中输入如下公式:=IF( B3 < 30000,″差″,IF( B3>= 60000 =,“优” =,“一般”),然后将此公式向下复制到C列其他单元格中(C2 : C10) 即可以完成操作。

2、表 2 要求计算出各种材料“2季度销售额”比“1季度销售额”的最大增长幅度值。具体操作方法按CTRL+ F3组合键给B列(B2:B9)命名为“1季度”(当然也可以定义成别的名称),给C列数据 (C2 : C9)命名为“2季度”,如果将最大增长幅度值放在C10单元格内,则在C10中输入以下公 式:=MAX(2季度-1季度)然后按CTRL+SHIFT+ENTER。

3、表 3 中有一个“得分”数据列,要求:如何一次性找出所有得分低于平均成绩的人员。我们可以用EXCEL中高级筛选的方法找出这些人员,筛选条件为“得分<平均分” ,其中“平均得分”可通过函数AVERAGE对″得分″列的计算值(注: C列为得分判断表中省略)。方法是在C1:C2中定义条件区域内容: (1)在C1单元格中输入“得分判断”;(2)在C2单元格中输入公式:= B3 < AVERAGR($B$3:$B$ 13);(3)执行“数据”菜单中的“筛选”子菜单的“高级筛选”命令;(4)在对话框中选择“将筛选结果复制到其他位置”单选框,选 择 C1 : C2为条件区域,指定筛选结果复制位置,按“确定”,此时在指定位置即可一次性地显示出所有得分小于平均值的人员。

4、表4要求给每个人工资增加10% 。对此题如果只是简单地利用EXCEL公式在C2单元格中输入公式C2=C2 * (1+ 0.1),那么你会得 到EXCEL的一个错误提示,因为该公式造成了死循环。我们可以用“选择性粘贴”解决这个问题 ,方法如下:(1)在D2单元格中输入公式:D2=C2 *(1 +0.1),然后将此公式向下复制到D列其他单元格内 (注: D列为输入公式表中省略);(2)选中区域D2:D12进行复制;(3)选中区域C2:C12,单击鼠标右键,在弹出的对话框中单击“选择性粘贴”,在再次弹出对话框中选择“粘贴”标签中的“数值”,按确定 即可;(4)删除D列内容,如果将此题改为:给每个“工程师”工资增加10元。方法如下:(1)利用“数据”菜单中“筛选”子菜单中的“自动筛选”命令选出所有的“工程师”;(2)在D2单元格中输入100;(3)把鼠标放在D2的右下角,”待其变成“+”字形后,往下拉,直到D2:D12都变成100;(4)选择区域D2:D12单击鼠标右键,在弹出的快捷菜单中选“复制”;(5)选择C2:C12区域,单击鼠标右键, 在弹出的对话框中单击“选择性粘贴”,在弹出的对话框中选择“运算”标签中的“加”,按确定;(6)最后删除D列内容即可。

参考文献:

[1] 木又木人.巧用EXCEL表格制作席卡[J].电脑迷.2008(17)

[2] 颜颖智.EXCEL表格中输入分数的六种方法[J].农村财务会计.2007(04)

EXCEL数据通讯 篇12

从供电所自主缴费机导出的客户缴费记录通常是个流水账, 由于没有汇总出某个台区或某个用户的累计缴费金额, 营销人员还需要对这些数据进行分类汇总, 使用Excel数据透视表可以快速完成这些工作。

如图1所示, 某供电所自主缴费机缴费流水账, 按工作要求需分别汇总出某台区累计缴费金额和某客户累计缴费金额等数据, 其方法如下。

1 创建数据透视表

点击Excel菜单命令“数据→数据透视表和数据透视图”, 打开“数据透视表和数据透视图向导”对话框。

第一步, 如图2所示, 选择“Microsoft Office Excel数据列表或数据库”及下面的“数据透视表”单选项。

第二步, 如图3所示, 在“选定区域”输入全部数据所在的单元格区域, 或者点击输入框右侧的“压缩对话”按钮, 在工作表中用鼠标选定数据区域。

第三步, 如图4所示, 在对话框中选定“新建工作表”选项, 以便将创建的数据透视表放到一个新的工作表中, 再点击“完成”按钮。

这样, 就可以建立一个空白的数据透视表, 并同时自动显示“数据透视表”工具栏和“数据透视表字段列表”对话框。

2 利用数据透视表得到需要的报表

根据要求, 我们要汇总出某台区累计缴费金额和某客户累计缴费金额等数据。因此应将“台区名称”和“客户名称”作为行字段, 而把“缴费金额”作为数据项。

如图5所示, 在“数据透视表字段列表”对话框中, 选中“台区名称”字段, 在“区域”下拉列表框中选中“行区域”, 点击“添加到”按钮, 将其添加到“行区域”中。

按照同样的方法, 将“客户名称”字段添加到“行区域”, 而将“缴费金额”字段添加到“数据区域”。完成后, 数据透视表已将“台区名称”“客户名称”相同的数据汇总到了一起, 得到如图6所示的效果, 这正是我们想要的报表。

3 其他需要补充的部分

(1) 对于添加字段到相应区域的操作还可以使用拖拽的方式, 例如你可以直接把“客户名称”等字段从“数据透视表字段列表”对话框中拖拽到“行区域”, 其结果将和我们上述操作相符。

上一篇:生产方式下一篇:LIS数据库