Как искать данные в таблице Access, используя UserName Environ - PullRequest
0 голосов
/ 17 мая 2019

В MS Access у меня есть таблица с именем "Table" с тремя полями.Помимо поля ID, у меня есть одно поле с именем "User" и одно поле с именем "Email".Оба поля "short text".Таблица имеет две строки, первая: User = Nobody и Email = nobody@yahoo.com.Второй: User = Somebody и Email = somebody@aol.com.

Я создал модуль со следующим кодом:

Sub Test()

Dim rs As Recordset
Dim localUser As String

localUser = Environ("UserName")
Set rs = CurrentDb.OpenRecordset("Table", dbOpenDynaset)

rs.FindFirst "[User] = 'localUser'"

MsgBox rs![Email]

End Sub

Локальный пользователь - "Somebody", как показано при выполнении:MsgBox Environ ("UserName")

Когда я выполняю код, я получаю окно сообщения с "nobody@yahoo.com".

. Я пытаюсь получить сообщение с "somebody@aol.com".

Что я делаю не так?

Заранее спасибо.

1 Ответ

0 голосов
/ 17 мая 2019

Попробуйте:

rs.FindFirst "[User] = '" & localUser & "'"

Но вы можете использовать DLookup :

Dim localUser As String

localUser = Environ("UserName")
MsgBox Nz(DLookup("[Email]", "Table", "[User] = '" & localUser & "'"))
...