Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Benutzerrechte in Access

Frage Entwicklung VB for Applications

Mitglied: cp-com

cp-com (Level 1) - Jetzt verbinden

18.10.2011 um 14:06 Uhr, 6333 Aufrufe, 2 Kommentare

Ich erstelle zurzeit eine Datenbank in Access 2010 und möchte dort mit Benutzergruppen arbeiten.

Sobald die Datenbank aufgerufen wird muss der User Benutzername und Passwort auswählen. Ist dieses erfolgreich soll der User je nachdem in welcher Benutzergruppe ein Formular, zum Bearbeiten der Datensätze angezeigt bekommen oder nur ein Bericht sehen dürfen. Ich hab das im Prinzip nach dieser Anleitung gelöst 2 (Man muss den Newsletter abonnieren um diesen komplett einsehen zu können, aber ich denke das ist in diesem Fall nicht notwendig).
Tabellen habe ich folgende:
  • tblDaten (beinhaltet die Daten für das Formular)
  • tblBenutzer (BenutzerID, Name, Vorname, Kennwort, BenutzergruppeID)
  • tblBenutzergruppe (BenutzergruppeID, Benutzergruppe)
Formulare:
  • frmLogin (Anmelde-Formular) Die Überprüfung ob Benutzername und Kennwort übereinstimmen erfolgt beim klicken auf den Button cmdLogin:
01.
Private Sub cmdLogin_Click() 
02.
    Dim lngBenutzerID As Long 
03.
    lngBenutzerID = Nz(DLookup("BenutzerID", "tblBenutzer", "Benutzername = '" & Me!cboBenutzername & "' AND Kennwort = '" & Me!txtKennwort & "'"), 0) 
04.
    If lngBenutzerID = 0 Then 
05.
        MsgBox "Benutzername und/oder Kennwort sind falsch." 
06.
        Me!txtKennwort.SetFocus 
07.
    Else 
08.
        MsgBox "Anmeldung erfolgreich!" 
09.
        DoCmd.Close acForm, Me.Name 
10.
        DoCmd.OpenForm "Formular" 
11.
    End If 
12.
End Sub
  • Formular
Bericht:
  • BerichtVonFormular

Was hier angezeigt wird funktioniert alles gut. Was muss ich nun an dem VBA?-Code ändern um die Benutzergruppen mit einzubeziehen?

Bin leider kein großer Access experte...Also bitte entschuldigt wenn ich fachlich mal daneben trete ;)
Mitglied: SlainteMhath
18.10.2011 um 15:50 Uhr
Moin,

evtl. sowas in der Art (auch wenn select...case nicht besonders elegant ist )

01.
lngGruppenID = Nz(DLookup("BenutzergruppeID", "tblBenutzer", "Benutzername = '" & Me!cboBenutzername & "'), 0)  
02.
select case lngGruppenID 
03.
  case is = 1 
04.
    docmd.openform "Formular 1" 
05.
  case is = 2 
06.
    docmd.openform "Formular 2" 
07.
  case else 
08.
    ... 
09.
end select
als Ersatz für deine Zeile 10.

Oder versteh ich die Frage falsch?

lg,
Slainte
Bitte warten ..
Mitglied: cp-com
19.10.2011 um 09:53 Uhr
Nein du verstehst mich genau richtig! Vielen dank.

LG
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Access 2010 Pivot Table Export keine Werte (2)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

LAN, WAN, Wireless
Rogue Access Point (21)

Frage von Axel90 zum Thema LAN, WAN, Wireless ...

VB for Applications
gelöst VBA Code Änderung Access 2010 (6)

Frage von Dr.Cornwallis zum Thema VB for Applications ...

Windows 10
Windows 10 mit Direct Access 2012 R2 zeigt es nicht alle Ordner an (4)

Frage von rainergugus zum Thema Windows 10 ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (15)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

Rechtliche Fragen
Hotspot rechtssicher betreiben? (14)

Frage von xSiggix zum Thema Rechtliche Fragen ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (14)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...