使用asp代码运行时错误'800a000d'

时间:2016-02-13 23:47:39

标签: vbscript asp-classic

当我在网站上搜索数据库中的项目时,我收到以下错误。

Microsoft VBScript runtime error '800a000d'
Type mismatch: 'FormatCurrency'
/search_diamond_results.asp, line 657

第657行具有以下代码。

'profprice = 0

                                price = 0 

                                price = rst("price")
                                'profprice = rst("profit") / 100                 

                                totprice = price' + profprice 


                                'If rst("profit") <> "" then
                    657--->             prc = FormatCurrency(totprice)
                                'Else
                                    If rst("price") <> "" then
                                        prc = FormatCurrency(rst("price")) 
                                    'Else
                                        'prc = rst("price") 
                                    End if
                                'End If 

你有解决上述错误的方法吗?

1 个答案:

答案 0 :(得分:0)

您的 totprice 可能为空或是字符串,您必须指定一个值才能使用 FormatCurrency 要检查您的变量是否为字符串,只需使用 IsNumeric(var)它将返回true或false。 另外,请确保该价格不是数据库中的varchar。

price = rst("price")
if IsNumeric(price)=false then
    price=replace(price,".",",")
    price=formatnumber(price)
end if
'profprice = rst("profit") / 100                 
totprice = price ' + profprice 
'If rst("profit") <> "" then
    prc = FormatCurrency(totprice)
'Else
    If rst("price") <> "" then
        prc = FormatCurrency(rst("price")) 
    'Else
        'prc = rst("price") 
    End if
'End If