Function GetAnswer(ByVal strQuestion As String) As Long
 Dim Ope As Variant, foo() As String, bThr As Boolean, bar As Long
 Dim i As Long, j As Long
 For Each Ope In Array("+", "-", "*", "/")
  strQuestion = Replace(strQuestion, Ope, " " & Ope & " ")
 Next Ope
 foo = Split(strQuestion)
 For i = 1 To UBound(foo)
  If bThr Then
   bThr = False
  ElseIf foo(i) = "*" Then
   foo(j) = foo(j) * foo(i + 1): bThr = True
  ElseIf foo(i) = "/" Then
   foo(j) = foo(j) / foo(i + 1): bThr = True
  Else
   j = j + 1: foo(j) = foo(i)
  End If
 Next i
 bar = foo(0)
 For i = 1 To j
  Select Case foo(i)
   Case "+": bar = bar + foo(i + 1)
   Case "-": bar = bar - foo(i + 1)
  End Select
 Next i
 GetAnswer = bar
End Function

この夏からVB始めたリアル厨房ですが、練習がてら文字列操作のみで算出してみました
勉強になるので批判も歓迎、やっぱ数値ではなく数字を演算する時って
Clngとかで数値に直してから演算した方がいいんですかね?
+以外は数字同士でも勝手に数値として演算してくれるみたいなんですが