簡體   English   中英

VBA-Excel-錯誤13

[英]VBA - Excel - Error 13

我是VBA的新手,我收到此錯誤13-錯誤類型的消息,但我不知道為什么,發現沒有任何幫助...任何提示? (對不起,它是法文)

Function EIDPA(Coût_actif, Tx_dépréciation, Tx_marginal, Coût_opportunité)
    EIDPA = ((Coût_actif * Tx_dépréciation * Tx_marginal) / (Coût_opportunité + Tx_dépréciation)) * ((1 + (0.5 * Coût_opportunité)) / (1 + Coût_opportunité))
End Function

Sub EIDPA2()
    Coût_actif = InputBox("Entrez le coût de l'actif SVP", "Calculateur", "100000")
    Tx_dépréciation = InputBox("Entrez le taux de dépréciation pour ammortissement SVP", "Calculateur", "0.30")
    Tx_marginal = InputBox("Entrez le taux marginal d'imposition SVP", "Calculateur", "0.50")
    Coût_opportunité = InputBox("Entrez le coût d'opportunité applicable SVP", "Calculateur", "0.05")
    MsgBox "La valeur actuelle des économies d'impôts est de: " _
    & Module1.EIDPA(Coût_actif, Tx_dépréciation, Tx_marginal, Coût_opportunité) & "$", vbInformation, "Calculateur"
End Sub

您應該適當地對變量進行調Dim 否則,您嘗試將字符串變量用作數字:

Function EIDPA(Coût_actif As Double, Tx_dépréciation As Double, Tx_marginal As Double, Coût_opportunité As Double) As Double
    EIDPA = ((Coût_actif * Tx_dépréciation * Tx_marginal) / (Coût_opportunité + Tx_dépréciation)) * ((1 + (0.5 * Coût_opportunité)) / (1 + Coût_opportunité))
End Function
Sub EIDPA2()
    Dim Coût_actif  As Double
    Dim Tx_dépréciation As Double
    Dim Tx_marginal  As Double
    Dim Coût_opportunité As Double

    Coût_actif = CDbl(InputBox("Entrez le coût de l'actif SVP", "Calculateur", "100000"))
    Tx_dépréciation = CDbl(InputBox("Entrez le taux de dépréciation pour ammortissement SVP", "Calculateur", "0.30"))
    Tx_marginal = CDbl(InputBox("Entrez le taux marginal d'imposition SVP", "Calculateur", "0.50"))
    Coût_opportunité = CDbl(InputBox("Entrez le coût d'opportunité applicable SVP", "Calculateur", "0.05"))
    MsgBox "La valeur actuelle des économies d'impôts est de: " _
    & Module1.EIDPA(Coût_actif, Tx_dépréciation, Tx_marginal, Coût_opportunité) & "$", vbInformation, "Calculateur"
End Sub

由於InputBox返回字符串,因此您遇到錯誤,並且嘗試在此處將字符串相乘:

EIDPA = ((Coût_actif * Tx_dépréciation * Tx_marginal) / (Coût_opportunité + Tx_dépréciation)) * ((1 + (0.5 * Coût_opportunité)) / (1 + Coût_opportunité))

嘗試將法語變量聲明為整數/浮點數,以查看是否有幫助。 更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM