Vb.net VB程序、循环迭代和excel编写

Vb.net VB程序、循环迭代和excel编写,vb.net,Vb.net,我正在写一个实习计划,需要一些建议。我做了研究,但大部分都没有结果。。。我需要循环“按钮”单击一秒钟的迭代。该程序将发送一个“P”字符,等待一秒钟,发送一个P,等待一秒钟,等等。我还需要将收到的信息写入excel电子表格。如果对现有代码有任何帮助/批评,将不胜感激 以下是我所拥有的: Public Class Form2 Dim buttonOnePush As Boolean = False Dim buttonTwoPush As Boolean = False Private Su

我正在写一个实习计划,需要一些建议。我做了研究,但大部分都没有结果。。。我需要循环“按钮”单击一秒钟的迭代。该程序将发送一个“P”字符,等待一秒钟,发送一个P,等待一秒钟,等等。我还需要将收到的信息写入excel电子表格。如果对现有代码有任何帮助/批评,将不胜感激

以下是我所拥有的:

Public Class Form2

Dim buttonOnePush As Boolean = False
Dim buttonTwoPush As Boolean = False



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    ' Send strings to a serial port.

    Using com5 As IO.Ports.SerialPort =
            My.Computer.Ports.OpenSerialPort("COM5")
        com5.WriteLine("P")

    End Using

End Sub

Function ReceiveSerialData() As String
    ' Receive strings from a serial port.
    Dim returnStr As String = ""

    Dim com5 As IO.Ports.SerialPort = Nothing
    Try
        com5 = My.Computer.Ports.OpenSerialPort("COM5")
        com5.ReadTimeout = 10000
        Do
            Dim Incoming As String = com5.ReadLine()
            If Incoming Is Nothing Then
                Exit Do
            Else
                returnStr &= Incoming & vbCrLf
            End If
        Loop
    Catch ex As TimeoutException
        returnStr = "Error: Serial Port read timed out."
    Finally
        If com5 IsNot Nothing Then com5.Close()
    End Try

    Return returnStr
End Function


Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
    If IsNumeric(TextBox1.Text) AndAlso IsNumeric(TextBox2.Text) Then
        TextBox1.Text = CDec(TextBox2.Text)
    End If
End Sub

Private Sub TextBox6_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox6.TextChanged
    If IsNumeric(TextBox6.Text) AndAlso IsNumeric(TextBox3.Text) Then
        TextBox6.Text = CDec(TextBox3.Text)
    End If
End Sub

Private Sub TextBox7_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox7.TextChanged
    If IsNumeric(TextBox7.Text) AndAlso IsNumeric(TextBox4.Text) Then
        TextBox7.Text = CDec(TextBox4.Text)
    End If
End Sub

Private Sub TextBox8_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox8.TextChanged
    If IsNumeric(TextBox8.Text) AndAlso IsNumeric(TextBox5.Text) Then
        TextBox8.Text = CDec(TextBox5.Text)
    End If
End Sub

Private Sub TextBox15_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox15.TextChanged
    If IsNumeric(TextBox15.Text) AndAlso IsNumeric(TextBox16.Text) Then
        TextBox15.Text = Hex(TextBox16.Text)
    End If
End Sub

Private Sub TextBox14_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox14.TextChanged
    If IsNumeric(TextBox14.Text) AndAlso IsNumeric(TextBox11.Text) Then
        TextBox14.Text = Hex(TextBox11.Text)
    End If
End Sub

Private Sub TextBox13_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox13.TextChanged
    If IsNumeric(TextBox13.Text) AndAlso IsNumeric(TextBox10.Text) Then
        TextBox13.Text = Hex(TextBox10.Text)
    End If
End Sub

Private Sub TextBox12_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox12.TextChanged
    If IsNumeric(TextBox12.Text) AndAlso IsNumeric(TextBox9.Text) Then
        TextBox12.Text = Hex(TextBox9.Text)
    End If
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    buttonTwoPush = True
    buttonOnePush = False

    Me.Close()
    Form1.Close()

End Sub
End Class

使用以1秒为间隔发出该命令。从工具箱中将计时器拖到窗体上,然后双击它以获得一个
\u勾选
方法

在窗体的构造函数中设置计时器的
.Interval
成员,并使用
.Start
.Stop
方法对其进行控制

对于Excel部分,您需要为Microsoft Excel 12.0(或14.0,如果您有Excel 2010)对象库添加对项目的引用。请在“添加引用”对话框的COM选项卡下找到此项,您可以在解决方案资源管理器中右键单击该项目。有关详细的引用,请参阅(向下滚动到页面底部,查看VB.NET中的快速示例)