小弟原来的程序是这样的
Private Sub Command1_Click()
     ReDim sData(9)
    sData(0) = &HD
    sData(1) = &H2A
    sData(2) = &H70
    sData(3) = &H6F
    sData(4) = &H77
    sData(5) = &H3D
    sData(6) = &H6F
    sData(7) = &H6E
    sData(8) = &H23
    sData(9) = &HD
    MSComm1.OutBufferCount = 0
    MSComm1.Output = sData '...按下命令1钮,发送命令
Private Sub Command2_Click()
     ReDim sData(9)
    sData(0) = &HD
    sData(1) = &H2A
    sData(2) = &H70
    sData(3) = &H6F
    sData(4) = &H77
    sData(5) = &H3D
    sData(6) = &H6F
    sData(7) = &H6E
    sData(8) = &H24
    sData(9) = &HD
    MSComm1.OutBufferCount = 0
    MSComm1.Output = sData '...按下命令2钮,发送命令
Private Sub Command3_Click()
     ReDim sData(9)
    sData(0) = &HD
    sData(1) = &H2A
    sData(2) = &H70
    sData(3) = &H6F
    sData(4) = &H77
    sData(5) = &H3D
    sData(6) = &H6F
    sData(7) = &H6E
    sData(8) = &H25
    sData(9) = &HD
    MSComm1.OutBufferCount = 0
    MSComm1.Output = sData '...按下命令3钮,发送命令
现在小弟把command1、2、3、、改成了
Private Sub Command1_Click(Index As Integer)
   不知道该如何写,才能达到我上面原来的目的
End Sub
非常感谢大家帮忙!

解决方案 »

  1.   

    把你的指令定义成二维数组sData(1 to 3,1 to 10)
    就不需要吧Command数组了,一个按钮循环发送指令即可,可是下位机需要反应时间,需要定义延时发送指令,并且在每组指令发送完成后,读取缓存区的数据。
      

  2.   


    Private Sub Command1_Click(Index As Integer)
       ReDim sData(9)
       Select Case Index
          Case 0
            sData(0) = &HD
            sData(1) = &H2A
            sData(2) = &H70
            sData(3) = &H6F
            sData(4) = &H77
            sData(5) = &H3D
            sData(6) = &H6F
            sData(7) = &H6E
            sData(8) = &H23
            sData(9) = &HD
          Case 1
            sData(0) = &HD
            sData(1) = &H2A
            sData(2) = &H70
            sData(3) = &H6F
            sData(4) = &H77
            sData(5) = &H3D
            sData(6) = &H6F
            sData(7) = &H6E
            sData(8) = &H24
            sData(9) = &HD
          Case 2
           sData(0) = &HD
           sData(1) = &H2A
           sData(2) = &H70
           sData(3) = &H6F
           sData(4) = &H77
           sData(5) = &H3D
           sData(6) = &H6F
           sData(7) = &H6E
           sData(8) = &H25
           sData(9) = &HD
       End Select
       MSComm1.OutBufferCount = 0
       MSComm1.Output = sData '...按下命令1钮,发送命令
    End Sub