Как улучшить примитивный код VBA для модели DCF?

Я новичок в VBA, и я пытался создать программу, которая позволяет мне брать начальную сумму наличных денег, скидывать эту сумму на определенную ставку дисконтирования, а также умножать ставку дисконтирования на n лет, чтобы найти данную дисконтированную денежную наличность поток, основанный на заданном числе лет. У кого-нибудь есть подсказки, как я мог бы сделать этот код более эффективным? Кроме того, какие советы по использованию цикла суммировать разные суммы наличных денег, такие как «(100 / 1.01) + (100 / 1.01 ^ 2) + (100 / 1.01 ^ 3)?» Заранее спасибо!

Sub DCF() Dim z As Double, CashFlow As Double, DiscRate As Double, Periods As Double CashFlow = InputBox("Enter initial cash flow: ", "Cash Flow") DiscRate = InputBox("Enter discount rate in decimal form: ", "Discount Rate") Periods = InputBox("How many periods (in years) are there?", "Periods") z = CashFlow / (1 + DiscRate) ^ Periods MsgBox Format(z, "$0.00") End Sub 

Код у вас в порядке и требует только цикла для создания дисконтированного денежного потока. Это должно делать то, что вы хотите:

 Sub DCF() Dim z As Double, CashFlow As Double, DiscRate As Double, Periods As Double: z = 0# CashFlow = InputBox("Enter initial cash flow: ", "Cash Flow") DiscRate = InputBox("Enter discount rate in decimal form: ", "Discount Rate") Periods = InputBox("How many periods (in years) are there?", "Periods") Dim i As Integer For i = 1 To Periods: z = z + CashFlow / (1# + DiscRate) ^ i Next MsgBox Format(z, "$0.00") End Sub 
  • Скопируйте не объединенные ячейки из одного листа в объединенные ячейки в другом, используя цикл
  • Попытка заставить эту vba прокручивать все листы в текущей книге. Он проходит через первый
  • VBA через папку (mac)
  • Расширение строк в Excel Loop VBA
  • Do While Loop не пропускает файл, он должен
  • Выпуск номера по диаграммам в выбранной группе
  • Попытка создать ключ для пространственно связанных записей с использованием цикла VBA
  • Python: пакетное переименование файлов в каталоге с использованием предопределенного списка, сортировка по дате, созданная
  • Как написать цикл в vba для этого кода
  • excel vba для каждого цикла
  • Java - Apache POI - проблема с заполнением строк и ячеек с помощью циклов (Excel)
  • Давайте будем гением компьютера.