Fänerk Geschrieben 23. Juni 2009 Geschrieben 23. Juni 2009 hi, ich habe ein problem mit den rechten zu einer access datenbank. ich hatte ja vor einer woche schon gefragt, wie das über haupt ist bei access usw. jetzt habe ich folgendes problem: ich habe eine access datenbank diese soll auf einem netzwerklaufwerk freigegeben werden 2 personen sollen schreiben können (und der admin soll vollzugriff) und die verwaltung lesen können nur lesen!! alle anderen sollen keinen zugriff haben wenn ich jetzt die access datenbank auf das netzwerklaufwerk kopiere und in den eigenschaften unter sicherheit die sachen so eintrage, wie ich die brauche, dann habe ich aber immer vom netzlaufwerk 2 vorgegebene gruppen: domain-admins domain-user beide haben vollzugriff. diese gruppen sind von uns so voreingestellt. und an dennen darf auch nichts verändert werden. kann ich in der access datenbank eine abfrage nach benutzer machen? oder gibt es eine andere möglichkeit, die rechte zu vergeben? zu den sachen: server des netzlaufwerks ist windows R2 2003 clients alle XP access datenbank mit Office 2007 erstellt, aber als 2003 abgespeichert. mfg Zitieren
Reinhold Geschrieben 23. Juni 2009 Geschrieben 23. Juni 2009 Moin, vielleicht hilft dir das entsprechende Whitepaper vom Accessprofipool hth Reinhold Zitieren
Fänerk Geschrieben 23. Juni 2009 Autor Geschrieben 23. Juni 2009 ne das klappt nciht richtig... dann fragt der bei jeder tabelle, die man öffnen will nach. ich habe da 3 tabellen, 1 start formular 1 eingabe formular und 1 abfrage als datenanzeige über die startmaske kommt man nur zu dem eingabe formular und der abfrage aber jetzt fragt der bei allem nach und ich musste den beiden unterschiedlichen gruppen ("schreiber" "leser") ein passwort geben... ich versuche es mal mit einem makro, dass wenn man den button "Daten Eingabe" klickt erst nach einem passwort gefragt wird... wenn einer dazu oder noch eine andere idee hat, bitte melden... aber trotzdem danke Reinhold Zitieren
Fänerk Geschrieben 23. Juni 2009 Autor Geschrieben 23. Juni 2009 wie kann ich in access 2007 ein makro in vba bearbeiten? wenn ich auf "erstellen" und "makro" gehe, dann bekomme ich eine tabelle mit Aktion Argument Komentar kann aber nirgends zu vba wächseln. wenn ich den button setze und statt irgendwas auszuwählen einfach auf "fertig stellen" gehe, dann kann ich in den eigenschaften zu vba wächseln. wenn ich jetzt dem button dieses vbs script gebe, tut dieser garnichts: Private Sub eingabe_Click() Dim pw As Integer pw = InputBox("Bitte Kennwort eingeben!") If pw <> "test" Then MsgBox ("Das Kennwort ist ungültig.") End Sub Else DoCmd.OpenForm eingabe, acNormal End If End Sub[/PHP] was habe ich falsch gemacht?? => ich habe es hier nur als php-code eingefügt, damit man es besser erkennen kann... Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 ich mag access nicht... wie kann ich denn da einfach ein makro in vba eingeben? wenn ich irgendwie in den vba modus reinkomme, dann speichert access das nicht als makro, sondern als modul. und im makro modus weiß ich garnicht, was ich wo eingeben muss... pls help!!!! Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 habe ein tut gefunden, was mich aber auch ncoh nciht weiterbringt =) =>tut ich habe die 1. variante genommen. habe eine tabelle erstellt mit den namen und den werten, wie es vorgegeben ist. habe ein leeres formular erstellt, die beziehung zu benutzer hergestellt und die sachen alle so eingestellt. hier mein vba-code: Option Compare Database Private Sub Text0_BeforeUpdate(Cancel As Integer) If DCount("BenutzerID", "Benutzer") = 0 Then Exit Sub End If Me.RecordsetClone.findfirst "[Benutzername] = '" & Me!Text0 & "'" Me.Bookmark = Me.RecordsetClone.Bookmark Me!Text2.SetFocus End Sub _______________________________________________ Private Sub Befehl4_Click() If Me!Benutzername = Me!Text0 And Me!Passwort = Me!Text2 Then a = MsgBox("Log-in erfolgreich.", vbOKOnly + vbInformation, "Meldung") DoCmd.Close acForm, Anmeldung DoCmd.OpenForm Maske Else a = MsgBox("Log-in fehlgeschlagen", vbOKOnly + vbInformation, "Meldung") End If End Sub [/PHP] das eingabe feld für den Benutzer heist bei mir "Text0" und für das Password "Text2" hatte gerade zur probe keine lust die namen zu ändern habe alle namen und bezeichnungen angepasst... aber wenn ich auf "Einloggen" klicke, dann tut sich garnichts... was mache ich falsch? Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 hab jetzt alles nochmal neu gemacht und jetzt geht es auch fast mein code: Private Sub eingabe_Click() Dim pw As String pw = InputBox("Bitte Kennwort eingeben!") If pw <> "123" Then MsgBox ("Das Kennwort ist falsch.") Else DoCmd.OpenForm eingabe, acNomal End If End Sub jetzt startet er die abfrage schonmal, wenn ich aber das Passwort eingebe, dann meldet er einen Fehler. hierdran stöhrt irgendwas: DoCmd.OpenForm eingabe, acNomal was mag er nicht? Zitieren
robotto7831a Geschrieben 24. Juni 2009 Geschrieben 24. Juni 2009 Und wie lautet die Fehlermeldung? Mach doch mal um eingabe Anführungszeichen. Frank Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 das war es, habe es gerade so ausprobiert... hätte ich auch selbst drauf kommen können :upps danke frank so jetzt klappt das genauso, wie es sein soll. jetzt würde ich nur noch gerne haben, dass in der msgbox der text in *** da steht und nciht 123 oder was dann acuh das passwort ist.. Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 hab es jetzt... in der inputbox kann man das nicht, ich habe mir dann ein formular gemacht, ein textfeld rein, da unte reigenschaften auf passwort gesetz einen button und den wie folgt programmiert: Option Compare Database Private Sub anmelden_Click() Dim pw As String Dim eingabe As String eingabe = passwort 'Passwort ist der Name des Textfeldes! pw = 123 If eingabe = pw Then DoCmd.Close acForm, "Anmeldung" DoCmd.OpenForm "Eingabe" Else MsgBox ("Das Passwor war falsch!") End If End Sub sogesehen könnte man es jetzt noch etwas ändern, dass man nur eine variable braucht: Option Compare Database Private Sub anmelden_Click() Dim eingabe As String eingabe = passwort 'Passwort ist der Name des Textfeldes! If eingabe = "123" Then DoCmd.Close acForm, "Anmeldung" DoCmd.OpenForm "Eingabe" Else MsgBox ("Das Passwor war falsch!") End If End Sub Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 danke euch die ihr mir geholfen habt!! und dennen, die es versucht haben... :D DANKE Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 mir ist gerade noch ein problem aufgefallen wenn ich nichts in das textfeld eingebe und auf "anmelden" klicke, dann bekomme ich eine laufzeitfehler "Unzulässige verwendung von 0" wie kann ich das abfangen? Zitieren
robotto7831a Geschrieben 24. Juni 2009 Geschrieben 24. Juni 2009 In dem Du bei dem Klick auf "namelden" prüfst, ob in dem textfeld ein Wert drin steht. Frank Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 mit welchem befehl mache ich das? soweit war ich auch schon... hab was gefunden, das soll wohl egtl helfen, lösst aber eine endlosschleife an "Falsches Kennwort" MsgBoxen aus... eingabe = Nz(rs!, passwort) ich bin mir gerade die NZ funktion am durchlesen.. evtl ist es nur die falsche variable... Zitieren
Thanks-and-Goodbye Geschrieben 24. Juni 2009 Geschrieben 24. Juni 2009 Verschoben in die VB-Abteilung. Zitieren
robotto7831a Geschrieben 24. Juni 2009 Geschrieben 24. Juni 2009 Ich denke NZ ist nicht das richtige. Access ist schon eine Weile her aber ich meine es gab dort ein OnClick Ereignis für den Button und dort muss man mit Hilfe von VBA das Feld auf Inhalt prüfen und je nach Ausgang der Prüfung entweder das Formular schließen oder im Formular bleiben. Frank Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 ka.. ich habe da ja jetzt erst meine startmaske, dort den button "Dateneingabe" die eingabe soll passwort geschützt sein. das klappt auch, wenn cih auf "Dateneingabe" gehe, öffnet sich das formular "Anmelden" dort muss der User dann in ein textfeld das passwort eingeben und dass wird dann geprüft. das klappt auch, aber wenn das textfeld leer bleibt und ich auf "Anmelden" gehe, dann kommt "Laufzeitfehler Unzulässige verwendung von Null" hier nochmal mein aktueller code: Option Compare Database Private Sub anmelden_Click() Dim pw As String Dim eingabe As String eingabe = passwort pw = "123" If eingabe = pw Then DoCmd.Close acForm, "Anmeldung" DoCmd.OpenForm "Eingabe" Else MsgBox ("Das Passwort war falsch!") End If End Sub Zitieren
robotto7831a Geschrieben 24. Juni 2009 Geschrieben 24. Juni 2009 Dann prüf doch ob die Eingabe Null ist. if (isNull(eingabe)) { MsgBox ("Das Passwort war falsch!") } [/code] Das ist nur ein Beispiel und bestimmt nicht so ganz VBA konform. Frank Zitieren
Fänerk Geschrieben 24. Juni 2009 Autor Geschrieben 24. Juni 2009 ich habe es jetzt anders. ich habe die beiden variabeln als "Variant" deklariert und es klappt. wenn jetzt natürlich irgendwas total gegen "Variant" spricht, dann versuche ich deinen vorschlag. so klappt es jetzt aber und bin jetzt auch happy Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.