我想創建一個攤銷表,其中利率取決於用戶提供的兩個輸入。使用VLOOKUP與多個標準/多維Vlookup
X代表行,Y代表列。 X,Y和利率的數值已經在4 X 6表格中設置。例如,如果用戶輸入X = 2和Y = 3,則利率將被確定爲5%。
IF函數可以工作,但它會佔用大量時間並且效率不高。
我考慮過使用數組,我認爲Vlookup將是最有效的。在Excel中,我用Vlookup和Match一起工作,但我很難將其翻譯成VBA代碼。
Option Explicit
Sub Amortisation()
Dim intRate, loanLife, initLoanAmt
Dim yrBegBal, intComp, prinComp, yrEndBal, annualPmt
Dim outRow, rowNum, outsheet
outRow = 3 'output table begins from row 4
outsheet = "loan amort"
Worksheets(outsheet).ActivateDo
loanLife = InputBox("Enter loan life." _
& " Loan life must be a whole number")
If loanLife < 0 Or (loanLife - Round(loanLife) <> 0) Then
MsgBox ("Loan life must be a whole number.")
End
End If
initLoanAmt = InputBox("Enter loan amount." _
& " Loan amount must be a positive whole number")
If initLoanAmt < 0 Or (initLoanAmt - Round(initLoanAmt) <> 0) Then
MsgBox ("Loan amount must be a positive whole number.")
End
End If
End Sub
,而不是提醒利率正如我與其他輸入完成後,我想VBA使用賦予了選擇從下表中的利率的輸入。
所以,如果X(貸款期)爲5,Y(initloanamount)爲700,那麼我想VBA用10的速度。
之後我可以繼續使用PMT功能的攤銷表。
你可以發佈你的利率表的圖片嗎?你需要用VBA做到這一點嗎? – TheEngineer
感謝您的回覆。是的,我必須使用VBA。我沒有利率表的圖片,我製作了一張格式類似的表格,但我無法在此處發佈。這是一張四行六列的簡單表格。我需要的是VBA能夠使用給定的輸入來找出交叉點處的利率。 – Samia
更多信息:表格範圍是A2:F6。列範圍是A2:F2。 – Samia