如何将RS232接收到数据写入EXCEL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将RS232接收到数据写入EXCEL相关的知识,希望对你有一定的参考价值。

我把这个数显器上的数据通过RS232接口传到电脑里,我用终端机试了有数据显示,传输正常,现在我想把电脑接收到的数据自动输入到EXCEL里,请求各位高手帮忙怎么解决这个问题。谢谢!
有没有具体操作步聚啊,非常感谢加分

1.启动excel从:工具-->宏-->Visual Basic 编辑器,打开excel VBA。
2.在ThisWorkbook上右单击鼠标选择插入--用户窗体 。
3.单击一下插入的窗体,单击菜单上的--工具--附加控件--选择Microsoft Communications Control, version 6.0 。
4.在窗体上添加mscomm1,添加commandButton1 。
5.单串口机子,短接rs232的2脚和3脚,双串口机子用232线连接两个串口,注意2、3线交叉,这里以单串口短接举例。
6.复制以下代码到窗体里:
VB code
'VBA代码
Private Sub CommandButton1_Click()
MSComm1.Output = "BEG1END"
End Sub
Private Sub MSComm1_OnComm()
Dim t1 As Long, com_String As String
Static i As Integer
t1 = Timer
Select Case MSComm1.CommEvent
Case comEvReceive '收到 RThreshold定义的字符数1字节
MSComm1.RThreshold = 0
Do
DoEvents
Loop While Timer - t1 < 0.1 '延时时间调整
com_String = MSComm1.Input
MSComm1.RThreshold = 1
i = i + 1: If i > 255 Then i = 1
Application.Cells(3, i).Value = com_String
End Select
'ActiveWorkbook.SaveAs Filename:="C:\d1.xls"
End Sub
Private Sub iniMscomm()
'On Error Resume Next
'=====-----初始化通信串口-----=====
MSComm1.CommPort = 1 '使用 COM1
MSComm1.Settings = "9600,N,8,1" '9600 波特,无奇偶校验,8 位数据,一个停止位
MSComm1.PortOpen = True '打开端口
MSComm1.RThreshold = 1 '缓冲区有1个字节就产生OnComm事件
MSComm1.InputLen = 0 '为 0 时,使用 Input 将使 MSComm 控件读取接收缓冲区中全部的内容。
MSComm1.InputMode = comInputModeText 'Input以二进制形式取回用comInputModeBinary,以文本形式取回是(缺省项)
MSComm1.RTSEnable = True
MSComm1.InBufferCount = 0 '清空缓冲区
End Sub
Private Sub UserForm_Initialize()
iniMscomm
End Sub
7.双击thisWorkBook,复制以下代码到窗体里:
VB code
'VBA代码
Private Sub Workbook_Open()
UserForm1.Show 0
'UserForm1.Hide
End Sub
8.保存文件并关闭excel,然后再打开你的文件,然后单击窗体上的按钮看看。
9.这个程序已经做过测试,sys2003 office2003。
10.如果excel中有数据输入,再去测试设置,注意com口号与波特率的设置。
参考技术A 如果RS232属于外部TXT文件,可以借助数据--导入--导入外部数据--确定来源功能写入数据 参考技术B 在Excel中借助于VBA,使用windows API函数接收RS232数据。本回答被提问者采纳

python中如何将测试结果写入到原有的excel表格

 今天周五了哦,每个月最开心的就是周五还有发工资那天,呵呵。在这里提前祝大家周末愉快。

上次分享了如何结合python+excel表实现单接口自动化,今天和大家说下,如何将测试结果自动写入到原有的excel表格。

因为本人以前有用过数据库+Python做自动化,分了两个表一个是test_data,一个是test_report,后面想用列和测试结果直接写到一个表格,于是就选择用excel+python 了。下面是代码实现的部分

这次用了我们wap端的登录功能模块,python+selenium+Excle 结合实现的,用列如下图,我们需要将我们在代码判断的结果自动写入到“final_reslut”字段中,如果和expected_reslut 一致就代表成功

技术分享

 

接下来是代码实现部分

技术分享

 

运行后会得到这样的结果:

技术分享

可以看到final_result 的字段已经有内容了,这样不是可以达到我们想要的效果了吗? 如果大家对我的登录模块的代码怎么写的有疑问,我会下次更新我的登录模块代码,这样你们会更加容易理解。

后面针对这个写入已存有的excel表我们可以封装为一个公用的模块,和其他用列模块结合起来。下次我会继续更新,今天就到这里了哦。

更多资料或软件下载可以关注我的博客或者加入以下群,qq:511213522/461085465

大家一起交流软件测试,一起进步。

  技术分享

 

以上是关于如何将RS232接收到数据写入EXCEL的主要内容,如果未能解决你的问题,请参考以下文章

在excel中如何使用vba实现将sql的数据快速写入excel

RS232 问题 - 如何将重量读取到 PC

SPI接口能否接RS-232串口实现数据传输,问了一些工程师说在单片机中写程序就可以识别,可是我实在没明白。

delphi 如何写入Excel

pyserial:如何正确接收来自电源的 rs232 答案

c#如何将html标签写入指定的excel中