Ошибка компиляции: вызов функции на левой стороне назначения - PullRequest
2 голосов
/ 26 сентября 2019

Я получил ошибку компиляции

"При вызове функции в левой части назначения должен возвращаться вариант или объект"

Попытка исправить унаследованный файл Excel, которыйрассчитывает различные значения, связанные с HVAC.Файл опирается на пару файлов .xla надстройки, которые содержат много функций.Я не могу получить результаты от большинства функций.Либо я получаю числа, которые сразу превращаются в нули, либо просто получаю ошибки #VALUE и #NAME.

Мои навыки работы с VBA несколько ограничены, а также мои знания о вычислениях, выполняемых этим файлом.

Function EvapDeltaGrn(altitude, evap_on, tdb_ma, hr_ma, sat_goal, hr_min)
    'use to calculate the delta grain when tdb_oa > than sat_goal

    EvapDeltaGrn = 0

    If tdb_ma = "" Then Exit Function
    If hr_ma = "" Then Exit Function

    If evap_on Then
        If tdb_ma >= (sat_goal) Then 'use evaporative cooling
            Enthalpy = Application.Run("'psychrometric functions.xla'!TdbGrainstoEnthalpy", altitude, tdb_ma, hr_ma)
            'Range("v14") = enthalpy
            EvapDeltaGrn = Application.Run("'psychrometric functions.xla'!TdbEnthalpytoGrains", altitude, sat_goal, Enthalpy)
            EvapDeltaGrn = EvapDeltaGrn - hr_ma
            EvapDeltaGrn = Round(EvapDeltaGrn, 2)
        Else    'evaporative humidification
            If hr_ma < hr_min Then EvapDeltaGrn = Round(hr_min - hr_ma, 2)
        End If
    End If
End Function

Ошибка, кажется, в Enthalpy =.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...