VB是否不支持DECIMAL类型的数据啊,我用select语句从数据库中查找出来的数据跟数据库中的不一样例如:2100.00 查询出的结果为21
3000.00 查询出的结果为3
164.60 查询出的结果为164.6怎么会这样啊,有哪位大侠碰到过同样的问题啊,帮帮忙啊本人在线等
3000.00 查询出的结果为3
164.60 查询出的结果为164.6怎么会这样啊,有哪位大侠碰到过同样的问题啊,帮帮忙啊本人在线等
定义Double变量来存储从数据库中取到的值
' 用户自定义的格式。
MyStr = Format(5459.4, "##,##0。00") ' 返回 "5,459.40"。
MyStr = Format(334。9, "###0。00") ' 返回 "334.90"。MyStr = Format(5, "0。00%") ' 返回 "500.00%"。====================
免费的学习交流网站,欢迎大家访问!
http://www.j2soft.cn/
用 rst.Fields("yye").Value 呢?
'发送数据
Private Sub cmdmanual_Click()
Dim buf() As Byte
Dim data(2000) As Byte
Dim hex As Byte
Dim i As Integer
Dim j As Integer
Dim high As Boolean
If curConnectID = 0 Then Exit Sub
If chkSendHex.Value = 1 Then '十六进制发送
buf = StrConv(txtsend.Text, vbFromUnicode)
j = 0
high = True
For i = LBound(buf) To UBound(buf)
If buf(i) >= Asc("0") And buf(i) <= Asc("9") Then
buf(i) = buf(i) - Asc("0")
ElseIf buf(i) >= Asc("a") And buf(i) <= Asc("f") Then
buf(i) = buf(i) - Asc("a") + 10
ElseIf buf(i) >= Asc("A") And buf(i) <= Asc("F") Then
buf(i) = buf(i) - Asc("A") + 10
Else
GoTo p
End If
If high Then
hex = buf(i) * 16
high = False
Else
hex = hex + buf(i)
high = True
data(j) = hex
j = j + 1
End If
p: Next i
If Not high Then
MsgBox "十六进制发送时,长度必须为偶数"
Exit Sub
End If
EDSock.SendToCOM curConnectID, 1, data, j
txtstate.Text = txtstate.Text & "发送成功 " & Time & vbCrLf
lblt.Caption = lblt.Caption + 1
Else '直接发送
buf = StrConv(txtsend.Text, vbFromUnicode)
EDSock.SendToCOM curConnectID, 1, buf, UBound(buf) - LBound(buf) + 1
txtstate.Text = txtstate.Text & "发送成功 " & Time & vbCrLf
lblt.Caption = lblt.Caption + 1
End If
End Sub