Убрать пробелы перед и после числа совсем просто:
strChislo = Trim(Text1.Text)
При этом strChislo - это строковая переменная!
Далее нужно заменить запятую на точку, потому что VB воспринимает запятую в числе, как ошибку
Zap = Instr(1, strChislo, ",")
If Zap > 0 Then
strChislo = Left(strChislo, Zap - 1) + "." + Mid(strChislo, Zap + 1)
End If
Убрать 0 перед числом тоже просто
Do
If Left(strChislo, 2) = "0." Then Exit Do ' Чило начинается с "0." , то есть это дробь
If strChislo = "0" Then Exit Do ' число равно 0
If Left(strChislo, 1) <> "0" Then Exit Do ' число начинается не с 0
strChislo = Mid(strChislo, 2) ' число начинается с 0, убираем его
Loop
Далее проверяем, что число 4-значное.
Zap = Instr(1, strChislo, ".")
If (Zap = 0) And (Len(strChislo) = 4) Then ' точки нет и в числе 4 знака
MsgBox "Это число 4-значное"
ElseIf (Zap > 0) And (Len(strChislo) = 5) Then ' точка есть и в числе 5 знаков
MsgBox "Это число 4-значное"
Else
MsgBox "Это число не 4-значное" ' Любое другое сочетание
End If
И, наконец, переводим число в числовую форму типа Double
dblChislo = Val(strChislo)
Хотя не знаю, нужно ли это. Искать произведение цифр, может быть, проще, выдирая цифры из строки.