labview读取电子表格.docx
- 文档编号:13711022
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:8
- 大小:19.16KB
labview读取电子表格.docx
《labview读取电子表格.docx》由会员分享,可在线阅读,更多相关《labview读取电子表格.docx(8页珍藏版)》请在冰点文库上搜索。
labview读取电子表格
竭诚为您提供优质文档/双击可除
labview读取电子表格
篇一:
使用labView读取excel的数值数据
使用labView读取excel的数值数据
一、题目概述:
这是一个基于labview读取excel的数值数据的程序。
微软的word和excel是创建报表的有力的标准软件套件。
由于它们已被广泛使用,一些labView的使用者会使用labView的activex接口来动态的控制这些文档处理软件,使用labView生成报表。
二、设计目的:
如何在labView中读取微软excel电子数据表中的数值数据,方便labview的使用者方便使用excel表格中的数值数据。
三、设计总体方案:
3.1设计思路
我们可以使用读取测量文件的expressVi从excel电子数据表中将数值数据读取到labView中,整个过程由以下两个步骤组成:
首先将你的excel电子数据表另存为以tab键分割的文本文件;然后,将*.txt文件重命名为*.lvm文件。
使用读取测量文件的expressVi就可以将数值数据读取到labView中。
3.2设计方案
1)打开包含了基本的数值信息的excel电子数据表。
2)将你的excel电子数据表另存为以tab键分割的文本文件。
3)单击“确定”。
需要注意的是,你保存的只是活动工作表的数值数据。
4)单击“是”。
5)关闭你的excel文档。
6)导航到你先前保存tab键分割文本文件的目录,对你的filename.txt右击,选择“重命名”,将你的文件以.lvm的后缀命名,即命名为filename.lvm。
7)使用读取测量文件的expressVi,在配置窗口的文件名栏,选择filename.lvm,可以将你的数值电子数据表读取到labView中。
使用读取电子表格的Vi:
labView的读取电子表格文件的Vi不能直接读取.xls的文件,只能读取分割文本文件。
如果是通过人工在读取电子表格的Vi输入数据(不是使用labView的写入电子表格文件的Vi)来创建的excel电子数据表的话,该Vi是无法很好地解读.xls文件的,而且将会向数组返回零值。
必须将excel文件保存为分割文本文件,才可以在labView中正确地的将该excel文件读取到数组中。
这个过程可以参考上面的例子。
现在将该txt文件的路径输入到读取电子表格的文件路径节点,该Vi会将正确的数据填写到指定的数组中。
如果只需要第一列的数据,可以将一个true值bool常量连接到“转置”接线端,则该Vi“第一行”输出端将输出一个数组,该数组将保存有你所需要的第一列的数据。
微软的word和excel是创建报表的有力的标准软件套件。
由于它们已被广泛使用,一些labView的使用者会使用labView的activex接口来动态的控制这些文档处理软件,使用labView生成报表。
然后,该activex编程接口的复杂性,会给程序开发者开发应用程序带来不小的难度。
为此,可以使用labView的微软办公套件专用的报表生成工具包,这样就无需学习微软word和excel的复杂的对象模型就可以生成报表。
报表生成工具包由一系列的灵活的、易用的Vi组成,使用户可以通过labView来创建和编辑微软word和excel报表。
报表生成工具的产品介绍链接如下所示。
首先,labview是有一些自带的关于excel编程的例子的。
用labview写一个类似eRp一样的软件,接触很多excel表格,花了些功夫在excelVba上,也算比以前有了更多的认识了。
这个程序:
这个程序的目的就是把一个2维数组(表格)里的内容写到excel里。
步骤大致是这样的,先打开excel,再打开一个workbook,然后打开worksheet,这实际上跟咱们使用excel的过程是一样的。
打开worksheet以后,它还定义了行与列的header,最后才把table里的数据写到excel里。
那个cellvalue子vi,我是从开始就用它,也像这个例子一样,每次写都是套俩forloop,然后往excel里边猛写。
这样写是比较麻烦的,我们可以一次性写一个二维数组进去,非常快。
方法是在Range下的,所以要先打开相应的range,才能用insert,这就相当于我们在excel里,需要在哪里插入一样的道理。
而shift参数,看Vba里的描述,它是一个常量,是指定单元格的移动方向,点xlinsertshiftdirection就可以看到这个常量的数值。
如何一次性读取或写入一定范围(若干行若干列)的数据?
当然不能用cell.value来写了。
用RangeValue来实现,这一点在Vba里没有写清楚,它给的例子还是相当于cellvalue一样,只是一个单元格的值,而实际上,应该是你指定的Range
里所有单元格的数值。
四、设计结果分析:
range方法包含两个参数cell1和cell2,所以range这个范围就是cell1到cell2的范围,比如b1到c5,就是一个2维数组了么。
Range.value有两个,一个get,一个put,对应于读和写。
如果cell2不连,那么就是只有一个单元格的值,那么这时候出来的就不是2维数组,而是一个数,连2维数组上去就会出错了。
五、设计体会:
本系统的统计特点是方便labview使用者方便从excel表格中获取数据,使labView的功能和excel联合,使用起来更加人性智能些。
扩展labView在工程上的应用提供了方向。
我们以前一直都接触的是c语言,汇编语言,Vhdl语言,等等这些文字语言,说实话,第一次接触labView语言,看到它的图形化的语言确实有一些惊奇,想不到编程语言如此复杂,竟然还有这么一种全部是图形编辑的程序编辑软件,真是对编程人员来说无疑是一大福音啊!
于是,就下定决心学好它,因为它有好几点我们从来没有体会过的好处:
第一,图形化的
语言,只要你知道它的每一个图标和各种内置的函数是表达怎么样一个意思,你就会用它简单快捷的实现你所要实现的功能;第二,很多硬件的东西可以用labView的内置各种函数来代替,不仅大大节省了很多外部的各种电路元件,而且利用电脑的cpu高速处理系统,让我们面对更加复杂的控制任务时更加从容,而不是局限于单片机系统有限的处理速度和片内资源;第三,用户可以根据自己的需要定义和制造各种仪器,labView的强大之处正在于此,把各种的仪器都在电脑上虚拟化了,让我们的工作更加方便。
在制作设计的过程中,我们几人一起学习讨论,一起研究共同进退,我感觉自己的知识还是太有限了,还要继续学习,因为它对我们以后的学习和工作太有帮助了,因为它给人一种“电脑在手,使用不愁”的感觉。
课程虽然学完了,但我们对于这门课的学习才刚刚起步,真心希望我们能够在这方面能有更深的造诣!
六、参考文献:
[1]阮奇桢.我和labView——一个ni工程师的十年编程经验[m],北京航空航天大学出版社,20xx.09.
[2]崔良沂、赵永昌.人工智能[m],第3版清华大学出版社.20xx.9
[3]ni.measurementandautomationcatalog[z],20xx.9
[4]labView8.20程序设计从入门到精通.清华大学出版.20xx.7
七、附录(源程序见电子档):
前面板没运行时
篇二:
使用labView读取微软excel的数值数据
使用labView读取微软excel的数值数据
主要软件:
主要软件版本:
8.2.1
主要软件修正版本:
次要软件:
n/a
问题:
如何在labView中读取微软excel电子数据表中的数值数据?
解答:
使用读取测量文件的expressVi:
你可以使用读取测量文件的expressVi从excel电子数据表中将数值数据读取到labView中,整个过程由以下两个步骤组成:
首先将你的excel电子数据表另存为以tab键分割的文本文件;然后,将*.txt文件重命名为*.lvm文件。
使用读取测量文件的expressVi就可以将数值数据读取到labView中。
你可以参照以下的步骤:
1.打开包含了基本的数值信息的excel电子数据表。
2.将你的excel电子数据表另存为以tab键分割的文本文件。
3.单击“确定”。
需要注意的是,你保存的只是活动工作表的数值数据。
4.单击“是”。
5.关闭你的excel文档。
6.导航到你先前保存tab键分割文本文件的目录,对你的
filename.txt右击,选择“重命名”,将你的文件以.lvm的后缀命名,即命名为filename.lvm。
7.使用读取测量文件的expressVi,在配置窗口的文件名栏,选择filename.lvm,可以将你的数值电子数据表读取到labView中。
导航到你先前保存tab键分割文本文件的目录,对你的filename.txt右击,选择“重命名”,将你的文件以.lvm的后缀命名,即命名为filename.lvm。
使用读取电子表格的Vi:
labView的读取电子表格文件的Vi不能直接读取.xls的文件,只能读取分割文本文件。
如果你是通过人工在读取电子表格的Vi输入数据(不是使用labView
的写入电子表格文件的Vi)来创建你的excel电子数据表的话,该Vi是无法很好地解读你的.xls文件的,而且将会向你的数组返回零值。
你必须将你的excel文件保存为分割文本文件,才可以在你的labView中正确地的将该excel文件读取到你的数组中。
这个过程你可以参考上面的例子。
现在将该txt文件的路径输入到读取电子表格的文件路径节点,该Vi会将正确的数据填写到你指定的数组中。
如果你只需要第一列的数据,你可以将一个true值bool常量连接到“转置”接线端,则该Vi“第一行”输出端将输出一个数组,该数组将保存有你所需要的第一列的数据。
注释:
微软的word和excel是创建报表的有力的标准软件套件。
由于它们已被广泛使用,一些labView的使用者会使用labView的activex接口来动态的控制这些文档处理软件,使用labView生成报表。
然后,该activex编程接口的复杂性,会给程序开发者开发应用程序带来不小的难度。
为此,你可以使用labView的微软办公套件专用的报表生成工具包,这样你就无需学习微软word和excel的复杂的对象模型就可以生成报表。
报表生成工具包由一系列的灵活的、易用的Vi组成,使用户可以通过labView来创建和编辑微软word和excel报表。
报表生成工具的产品介绍链接如下所示。
相关链接:
knowledgebase:
39Rghmzh:
howdoiReadorwritetonamedcellsornamedRangesinexcelusingthelabViewReportgenerationtoolkitknowledgebase:
28Fc4sj3:
ReadFromspreadsheetFileViworksincorrectlywithlargenumberslabViewReportgenerationtoolkitformicrosoftoffice
附件:
exceltxt.png
用labview怎么读取excel
在labview中,先用writetospreadsheet模块写一个.xls文件,然后再用readfromspreadsheet读是可以实现的;但是如果用excel自己创建一个表格,存盘后后缀也是.xls的形式,再用readfromspreadsheet读取,读到的是一串0,这是为什么?
那么用labview怎么读取excel那?
?
有人说先把excel存成.txt文件再读,这样比较麻烦
请不吝赐教!
:
)
samuel811010发表于20xx-7-120:
24
我也想知道,那位帮帮忙啊!
hukee发表于20xx-7-608:
46
是因为读取的格式错了,主要是字段的分隔符(delimiter)引起的。
writetospreadsheet和readfromspreadsheetVi正好用同样的delimiter/t(tab
键)作为delimiter,所以不存在读取错误的问题。
用excel生成的文件不是用tab作为delimiter,所以存在读取错误的问题。
用excel另存为txt文件正好是tab(制表符)分隔,再读取也就ok了,呵呵。
jinfengshi_20xx发表于20xx-1-1220:
37
不是太明白,能不把制作的过程做成图片的形式,发给我,谢谢了!
我的邮箱是
[email]jinfengshi_20xx@[/email]
knhm发表于20xx-1-2815:
46
可以参考labview自带的例子,位置:
c:
\programFiles\nationalinstruments\labView8.2\examples\comm\excelexamples.llb
[转载]关于labview里对excel的编程(20xx-06-1007:
22:
35)
转载原文
标签:
转载
原文地址:
关于labview里对excel的编程作者:
marine
这里只讨论通过activex的方法,因为只有这种方法,才能完全发挥excel的所有强大的功能。
首先,labview是有一些自带的关于excel编程的例子的。
在findexample里search一下,有挺多的,其中有一个叫writetabletoxl.vi,我最早就是跟着它学的。
学了不少,也被误导
了很久,其实也不能算误导,只是以前没花时间去研究。
最近在用labview写一个类似eRp一样的软件,接触很多excel表格,花了些功夫在excelVba上,也算比以前有了更多的认识了。
先来看看writetabletoxl这个程序:
这个程序的目的就是把一个2维数组(表格)里的内容写到excel里。
从上图看,步骤大致是这样的,先打开excel,再打开一个workbook,然后打开worksheet,这实际上跟咱们使用excel的过程是一样的。
打开worksheet以后,它还定义了行与列的header,最后才把table里的数据写到excel里。
那个cellvalue子vi,我是从开始就用它,也像这个例子一样,每次写都是套俩forloop,然后往excel里边猛写。
最近我才发现,原来有其他的方法,可以一次性写一个二维数组进去,非常快。
其实想想也是,不至于会那么傻了。
不过也怪Vba里太多的属性和方法,不容易找。
前边的打开excelworkbook和worksheet我就不说了,例子里就有,可以新建一个workbook和sheet,也可以打开现有的,这个在excelexample.llb里都能找到。
(excelexample在哪里?
这个……,打开这些个Vi,saveas一下就知道在哪里了,ok?
)
接下来说一下这几天找到的几个方法和属性。
首先是insert,插入行或者列(就像你在excel里右键插入一样,每次只能一行或者一列,要多行的话,只能多来几次了,是这样吧?
)在说这个之前,先说下怎么找这些属性和方法,在excel里,打开Vb编辑器(工具-》宏-》Vb编辑器,excel20xx是在菜单开发工具下,我用的是excel20xx),打开以后看Vb语言参考,重点就是里边的方法和属性,对应在labview里边的property和method节点。
help里可以搜索,输入insert,可以看到很多,没办法,不熟悉只能一个一个看咯。
看到range.insert方法以后,去和labview的比对一下。
可以看到这就是我们需要的方法了。
因为改方法是在Range下的,所以要先打开相应的range,才能用insert,这就相当于我们在excel里,需要在哪里插入一样的道理。
而shift参数,看Vba里的描述,它是一个常量,是指定单元格的移动方向,点xlinsertshiftdirection就可以看到这个常量的数值,在这里我就不贴图了。
接下来讲最有成就感的发现,如何一次性读取或写入一定范围(若干行若干列)的数据?
当然不能用cell.value来写了。
有的朋友可能已经发现了。
就是用RangeValue来实现,这一点在Vba里没有写清楚,它给的例子还是相当于cellvalue一样,只是一个单元格的值,而实际上,应该是你指定的Range里所有单元格的数值。
如上图,range方法包含两个参数cell1和cell2,所以range这个范围就是cell1到cell2的范围,比如b1到c5,这不就是一个2维数组了么?
对,就是这样。
篇三:
labview读取excel表格
(1)
此程序用来在labview’中读取excel表格的数据并将其存到数组
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- labview 读取 电子表格