У меня есть этот код, и он работает:
Sub try3()
Dim dates(1 To 2) As Date
Dim values(1 To 2) As Double
Dim TIR As Double
dates(1) = #1/1/2015#
dates(2) = #1/1/2016#
values(1) = -1000
values(2) = 1101
TIR = Application.WorksheetFunction.xirr(values, dates)
End Sub
Однако, если я изменю даты, например, на
dates(1) = #1/15/2015#
dates(2) = #1/15/2016#
, я получу ошибку 1004:
«Не удалось получить свойство Xirr класса WorksheetFuntion».
Формат даты моего компьютера - европейский (дд / мм / гггг).Если я изменю его на американский (мм / дд / гггг), мой код будет работать.
Я хотел бы сохранить европейский формат в моей системе и хотел бы, чтобы мой код можно было запускать с любого компьютера,независимо от формата даты их системы
Я пытался определить даты следующим образом, но я получаю ту же ошибку.
dates(1) = DateSerial(2015, 1, 15)
dates(2) = DateSerial(2016, 1, 15)
Любая идея, как заставить VBA понимать даты при сохранении европейскогоформат в моем компьютере?
Спасибо