比如我在text1中输入=6+9+9+9,按下回车键,就能得出 text1.text=33 恳请各位赐教!

解决方案 »

  1.   

    如果只是加法的话
    Private Sub Text1_KeyPress(KeyAscii As Integer)
        If KeyAscii = vbKeyReturn Then
            Dim TmpS As String
            TmpS = Trim(Text1.Text)
            If TmpS = "" Then Exit Sub
            If Left(TmpS, 1) <> "=" Then Exit Sub
            TmpS = Right(TmpS, Len(TmpS) - 1)
            If TmpS = "" Then Exit Sub
            Dim SS() As String, L As Long, i As Long
            SS = Split(TmpS, "+", -1, vbTextCompare)
            L = 0
            For i = 0 To UBound(SS)
                L = L + Val(SS(i))
            Next i
            Text1.Text = "=" & L
            Text1.SelStart = Len(Text1.Text)
        End If
    End Sub