2014-03-25 5 views
0

VBA에 익숙하지 않습니다.이 오류가 발생합니다. 13 - 형식이 잘못되었습니다. 그러나 이유가 없으며 도움이되지 않습니다. 힌트가 있습니까?VBA - Excel - 오류 13

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é))을 :에서 InputBox 문자열을 반환하기 때문에 오류가 있어요, 당신은 여기 함께 문자열을 곱하려는

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 

답변

1

변수를 올바르게 입력해야합니다. 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 
0

(죄송는 프랑스어입니다).

프랑스 변수를 정수/부동 소수점으로 선언하여 도움이되는지 확인해보십시오. More info