Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: tsc921 am Dezember 13, 2013, 13:02:58

Titel: User übernehmen in Abfrage
Beitrag von: tsc921 am Dezember 13, 2013, 13:02:58
Hallo,
ich habe in einer Access DB ein Nachrichten System eingebaut.
Um an die Information zu kommen, welcher User eingeloggt ist, habe ich diesen Code:

***************************************
Sub PCDaten()
Dim Netzwerk

Set Netzwerk = CreateObject("wscript.network")
MsgBox Netzwerk.UserName
End Sub
****************************************

Nun möchte ich gerne den UserName in einer Abfrage benutzen.
Ich weiß aber nicht wie das geht. Könnt Ihr mir helfen.

Danke
Titel: Re: User übernehmen in Abfrage
Beitrag von: Stapi am Dezember 13, 2013, 13:54:11
Hallo

Verlager die Funktion zum ermitteln deines User in ein Modul, nach dem kannst du den "Netzwerk.Username" als kritterium in einer Abfrage verwenden.
Titel: Re: User übernehmen in Abfrage
Beitrag von: tsc921 am Dezember 13, 2013, 14:07:05
Hallo,
danke für Deine Hilfe, ich kenne mich leider noch nicht so gut mit Modulen aus. Diesen Code habe ich aus dem Internet in ein Modul eingefügt.
Also ich habe ein Modul namens Modul1

Nachdem ich "Netzwerk.Username" als Kriterium eingetragen habe, macht Access [Netzwerk].[Username] davon, anschliessend kommt ein Fenster mit Parameter Abfrage.

Danke
Titel: Re: User übernehmen in Abfrage
Beitrag von: Stapi am Dezember 13, 2013, 14:56:35
Hallo
Option Compare Database
Option Explicit
Public Declare Function api_GetUserName Lib "advapi32.dll" Alias _
    "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Public Function atCNames() As String
    ' Ermittelt den Windows USERNAME
    Dim NBuffer As String
    Dim Buffsize As Long
    Dim Wok As Long
    Dim Temp As String
   
    Buffsize = 256
    NBuffer = Space$(Buffsize)
    Wok = api_GetUserName(NBuffer, Buffsize)
    Temp = Trim$(NBuffer)
    atCNames = Left(Temp, Len(Temp) - 1)
End Function

Ich habe dir hier mal die Funktion heraus gesucht die ermittelt welcher User aktuell den Rechner nutzt, atCNames wäre das Kriterium für deine Abfrage.
Für dein Code sollte so lauten:
Public Function PCDaten()
Dim Netzwerk

Set Netzwerk = CreateObject("wscript.network")
MsgBox Netzwerk.UserName
End Function
Titel: Re: User übernehmen in Abfrage
Beitrag von: tsc921 am Dezember 16, 2013, 11:47:04
Hallo,
vielen Dank für Deine Hilfe.
Werde ich gleich ausprobieren. Sorry das ich mich erst jetzt melde.
Ist Arbeits-PC

Danke

Gruß
Frank