Я хотел бы написать несколько пользовательских функций VBA для выполнения вычислений для определенных полей в наборе запросов. Вот что у меня сейчас есть:
Public Function TVM(LEN_SEC As Double, ADT_CUR As Integer, TRK_PCT As Integer)
TVM = LEN_SEC * ADT_CUR * TRK_PCT / 100#
End Function
Это прекрасно работает, но когда я создаю запрос, мне нужно сделать что-то вроде этого:
SELECT TVM([LEN_SEC], [ADT_CUR], [TRK_PCT]) AS TRK_VMT
FROM System;
Я бы предпочел сделать это вместо:
SELECT TVM()
FROM System;
Есть ли способ получить доступ к текущей строке, выводимой запросом из функции VBA? Примерно так:
Public Function TVM(LEN_SEC As Double, ADT_CUR As Integer, TRK_PCT As Integer)
TVM = CurrentRow.Fields("LEN_SEC") * CurrentRow.Fields("ADT_CUR") * CurrentRow.Fields("TRK_PCT") / 100#
End Function
Эти вычисления часто используются в чувствительных ко времени пользовательских отчетах несколькими пользователями с разным уровнем квалификации и разной степенью внимания - чем проще я могу сделать для них интерфейс, тем лучше для нашей команды QA.
Спасибо!