使用LabVIEW读取微软Excel的数值数据.docx

上传人:b****8 文档编号:9306490 上传时间:2023-02-04 格式:DOCX 页数:15 大小:331.82KB
下载 相关 举报
使用LabVIEW读取微软Excel的数值数据.docx_第1页
第1页 / 共15页
使用LabVIEW读取微软Excel的数值数据.docx_第2页
第2页 / 共15页
使用LabVIEW读取微软Excel的数值数据.docx_第3页
第3页 / 共15页
使用LabVIEW读取微软Excel的数值数据.docx_第4页
第4页 / 共15页
使用LabVIEW读取微软Excel的数值数据.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

使用LabVIEW读取微软Excel的数值数据.docx

《使用LabVIEW读取微软Excel的数值数据.docx》由会员分享,可在线阅读,更多相关《使用LabVIEW读取微软Excel的数值数据.docx(15页珍藏版)》请在冰豆网上搜索。

使用LabVIEW读取微软Excel的数值数据.docx

使用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:

HowdoIReadorWritetoNamedCellsorNamedRangesinExcelUsingtheLabVIEWReportGenerationToolkit?

KnowledgeBase:

28FC4SJ3:

ReadFromSpreadsheetFileVIWorksIncorrectlywithLargeNumbers

LabVIEWReportGenerationToolkitforMicrosoftOffice

附件:

ExcelTXT.PNG

 

用Labview怎么读取excel?

在labview中,先用writetospreadsheet模块写一个.xls文件,然后再用readfromspreadsheet读是可以实现的;但是如果用excel自己创建一个表格,存盘后后缀也是.xls的形式,再用

readfromspreadsheet读取,读到的是一串0,这是为什么?

那么用Labview怎么读取excel那?

有人说先把excel存成.txt文件再读,这样比较麻烦

请不吝赐教!

:

samuel811010发表于2006-7-120:

24

我也想知道,那位帮帮忙啊!

hukee发表于2006-7-608:

46

是因为读取的格式错了,主要是字段的分隔符(delimiter)引起的。

writetospreadsheet和readfromspreadsheetVI正好用同样的delimiter/t(tab

键)作为delimiter,所以不存在读取错误的问题。

用excel生成的文件不是用tab作为delimiter,所以存在读取错误的问题。

用excel另存为txt文件正好是tab(制表符)分隔,再读取也就ok了,呵呵。

jinfengshi_2005发表于2007-1-1220:

37

不是太明白,能不把制作的过程做成图片的形式,发给我,谢谢了!

我的邮箱是[email]jinfengshi_2005@[/email]

knhm发表于2007-1-2815:

46

可以参考labview自带的例子,位置:

C:

\ProgramFiles\NationalInstruments\LabVIEW8.2\examples\comm\ExcelExamples.llb

[转载]关于Labview里对excel的编程

(2010-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编辑器,excel2007是在菜单开发工具下,我用的是Excel2007),打开以后看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维数组了么?

对,就是这样。

Range.value有两个,一个get,一个put,对应于读和写。

如果cell2不连,那么就是只有一个单元格的值,那么这时候出来的就不是2维数组,而是一个数,连2维数组上去就会出错了。

还有其他很多方法和属性,比如合并、拆分单元格,超链接,还有load,saveas之类的,这些都可以去参考VBA,再自己稍加研究,都是能找到的。

  最后发句感叹,excel太强大了,下了个编程手册,100多M,晕!

有关于用labview读取excel文档的问题

悬赏分:

20|解决时间:

2010-11-115:

36|提问者:

xuanxi2005

问题补充:

有什么读取模块可以用来读取excel文档?

除了那个DDE对话模块之外的

最佳答案

1.安装reportgenerationtoolkit工具包,其中Excel中有个GetData.vi。

2.activex控件

3.搜索LabVIEW帮助,关键词“excel”,会获得很多信息!

参考一下:

[]LabVIEW应用-Read Excel use ActiveX

(2009-12-1114:

31:

10)

转载

标签:

原创

labview

activex

excel读取

it

分类:

[原创]LabVIEW应用

[][]在LabVIEW中利用ActiveX读取Excel数据

 网络上有很多关于读取Excel的例子,但一直没有找到读取文件中整sheet的数据,所以在这里介绍一下在LabVIEW中利用ActiveX读取文件中整张表格的内容.

 LabVIEW中利用ActiveX打开Excel分OpenApplication,OpenWorkbook&OpenWorksheet三个步骤,以下详细描述实现方法:

1.前面板中放下'自动化引用句柄':

引用句柄>>自动化引用句柄;

2. 前面板中右击'自动化引用句柄',在'选择ActiveX类'下选择'Excel._Application'此时'自动化引用句柄'的名称会更新'Excel._Application';

  

3.程序框图中放下'打开自动化':

右击'Excel._Application'>>'ActiveX选板'>>'打开自动化';

  

4.将'Excel._Application'连线至'打开自动化'的左侧自动化引用句柄端;

5.程序框图中放下'属性节点';(同步骤3)

6.将'打开自动化'的右侧自动化引用句柄端连线至'属性节点'的引用端;

7.单击'属性节点'的属性,在下拉列表中选择'Workbooks';

8.程序框图中放下'调用节点';(同步骤3)

9.将步骤7中的'Workbooks'连线至'调用节点'的引用端;

10.单击'调用节点'的方法,在下拉列表中选择'Open';

11.在'Open'的'Filename'输入端连接所需打开Excel文件的路径;

  

12.同步骤5,放下'属性节点',其引用端连接'Open',然后单击'属性节点'的属性,在下拉列表中选择'Worksheets';

13.同步骤8,放下'调用节点',其引用端连接'Worksheets',然后单击'调用节点'的方法,在下拉列表中选择'Item';

14.在'Item'的'Index'输入端创建'输入控件',此'输入控件'代表Excel中的sheet#;(例如需要打开文件中的sheet2,可直接连接num2至'Index'输入端)

  

15.程序框图中放下'变体至数据转换'(同步骤3),将其变体端连接至'Item';

16.同步骤1,在前面板中再次放下'自动化引用句柄',然后如步骤2方式在'选择ActiveX类'下选择'Excel._Worksheet';

17.程序框图中,将'Excel._Worksheet'连线至'变体至数据转换'的类型端;

18.同步骤5,放下'属性节点',其引用端连接'变体至数据转换'的数据端,然后单击'属性节点'的属性,在下拉列表中选择'UsedRange';

19.同步骤8,放下'调用节点',其引用端连接'UsedRange',然后单击'调用节点'的方法,在下拉列表中选择'Value(获取)';

  

20.同步骤15,放下'变体至数据转换',其变体端连接至'Value';

21.只要在'变体至数据转换'的类型端连接一个二维的字符型数组常量,就可以在数据端获取表格中的数据了;(连贯的程序如下)

   

22.程序的最后需要CloseApplication,CloseWorkbooks&CloseWorksheets来关闭调用;

 

[]实例应用

 在写一个数据整理工具中用到的事例:

Data的文件类型可以是.csv或者.xls,其中.csvfile可以通过LabVIEW中的'读取电子表格文件'工具直接读取,而.xls则需要用到ReadExcel子VI来实现.实例框图如下:

[前面板]

  

[程序框图]

  

 

[]结束

 

我把一个波形的数据存储到一个excel文件中,这个excle文件中的第一列是这个波形的时间值,第二列是对应时间的波形值,我想通过利用Readfromspreadsheetfile.vi把这个文件读取出来,然后通过转换把读到的数据恢复出原本的波形,既最后的输出是一个波形,XYGraph,请问这该怎么弄呢?

有知道怎么做的麻烦请告诉小弟下,谢谢了!

(我把我的excel波形数据文件制作成一个压缩包作为附件上传上来了)。

123.rar

2010-4-2121:

09上传

下载次数:

4

60.83KB,下载次数:

4

excel波形数据文件

收藏0分享0顶00

LabVIEW+单片机学习套件全套资料下载[免费]

点评回复引用

使用道具举报返回顶部

提升卡

沉默卡

喧嚣卡

变色卡

抢沙发

恢复卡

gigio

∙发短消息

∙加为好友

狗仔卡

gigio当前离线

在线时间

1小时 

注册时间

2009-4-10 

最后登录

2010-11-3 

阅读权限

90 

帖子

409 

精华

积分

3390 

UID

117123 

论坛元老

论坛元老,积分3390,距离下一级还需9996609积分

2#

发表于2010-4-2201:

24|只看该作者

高性价比以太网数据采集卡NET0816集成加密狗

Readfromspreadsheetfile.vi输出二维数组,xygraph需要二组数据,提取出来不是正好咯

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 可爱清新

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1