Logged On user information from macro screen

A

Alan Cantor

Hi, your help is much appreciated.

I'm writing an Access 2002 db that has it's own mdw user/group definitions.
After a user logs on and is using one of the forms, they have the option to
check a box.

Basically, I would like to give the ability to check this special box to
admin users and NOT regular New Data Users. How do I do this?

My thoughts were to use the vb (alt-f11) macro code builder to check the
(Access.Users.CurrentlyLoggedOnUser.Group - pipe dream eh?) access
automation object somehow to extract the group or the username or the
userlevel (anything) from within the CHECKBOX_ONCLICK event. You know..
something like...

sub checkboxname_onclick()
'this ? ...
if user.level < 1 then
msgbox("you're hosed")
end if
'or this ? ...
if user.group <> "adminGroup" then
msgbox("too bad buddy")
end if
end sub

Basically, my question is .... IS this a way to access the
currently-logged-on-user information programmatically from the access
automation objects available in the F2 object browser?

Thanks for your help,
Alan Cantor
 
N

Neil

Hello Alan,

I have a public procedure in a module as follows:

Public Function InGrp(usr As String, grp As String) As Boolean

Dim ws As Workspace, SecGrp As Group, SecUsr As User
' Check to see if user exists in current workgroup
Set ws = DBEngine.Workspaces(0)
Set SecGrp = ws.Groups(grp)
InGrp = False
For Each SecUsr In SecGrp.Users
If SecUsr.Name = usr Then
InGrp = True
End If
Next
Set ws = Nothing

End Function

This will return a true/false value when you call the procedure. e.g.

If InGrp(CurrentUser, "Admins") Then
' Current user is an Admin
Else
' Current user isn't an Admin
End If

Hope this helps,

Neil.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top