У меня есть два модуля. Один запускает процедуру (различные запросы и т. Д.), А другой должен записывать в таблицу, например, имя пользователя, внесенные изменения и т. Д.Доступ к VBA Передача переменной между модулями
Я успешно написал сценарий, который записывает в таблицу и один который читается из таблицы. Однако я не могу передать эту переменную от одной к другой.
Например, вот код, который пытается читать «User» значение из суб/функции ReadSystemTbl()
Sub Testing()
Dim x As String
x = ReadSystemTbl("User")
MsgBox x
End Sub
А вот код, который находит значение и возвращает его:
Public Function ReadSystemTbl(FindField As String)
Dim db As Database
Dim rs As Recordset
Dim SystemField As Field, SystemValue As Field
Dim results As String
Set db = CurrentDb()
Set rs = db.OpenRecordset("SystemTbl")
Set SystemField = rs.Fields("SystemField")
Set SystemValue = rs.Fields("SystemValue")
Do Until rs.EOF
If SystemField = FindField Then
results = SystemValue
End If
rs.MoveNext
Loop
End Function
Рассмотрите возможность добавления 'Exit Function' перед' End If', чтобы вы не перебирали весь набор записей, если вам это не нужно. На самом деле .. нет. Сделайте свой код работать и поместите его на [codereview.se], чтобы получить обратную связь о правильной очистке ресурсов. –