Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Cuber am August 08, 2016, 16:57:58

Titel: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: Cuber am August 08, 2016, 16:57:58
Hallo Community,
als Hobbyprogrammierer benötige ich mal Hilfe von Euch. Viele Anregungen von Euch konnten mir schon bei meiner Programmierarbeit helfen.
Danke dafür
Ich habe schon seit Wochen im Internet gegoogelt und leider keine Lösung für mein Problem gefunden. Ich habe mir eine Kunden und Vertragsdatenbank gebastelt, welche auch von verschiedenen Usern genutzt wird.
Um die F-Tasten auszuschalten habe ich im VBA einen Code genutzt, welcher bei allen Formularen super funktioniert. Im Laufe der Zeit habe ich mitbekommen, dass man ja in den Berichten auch die F-Tasten nutzen kann. Jeder User, der sich mit Access etwas auskennt, würde diese Lücke finden.
Nun mal zum Thema.....
Nachfolgenden Code nutze ich für die Formulare zum ausschalten der F-Tasten mit Passwortabfrage und Eingabe mit Sternchen:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
     Dim password As String

     Select Case KeyCode
       Case vbKeyF1
         KeyCode = 0
       Case vbKeyF11
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
' InputBoxDK ist ein Modul für die Darstellung als Sternchen'
             MsgBox "F11-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF11
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF12
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F12-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF12
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
            Case vbKeyF2
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F2-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF2
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF3
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F3-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF3
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF4
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F4-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF4
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF5
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F5-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF5
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF6
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F6-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF6
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF7
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F7-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF7
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF8
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F8-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF8
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF9
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F9-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF9
             Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
     Select Case KeyCode
        Case vbKeyF10
         If InputBoxDK("Sind Sie berechtigt? Dann bitte das Passwort eingeben:") = "Passwort" Then
             MsgBox "F10-Taste wurde einmalig entsperrt!"
             KeyCode = vbKeyF10
           Else
             MsgBox "Sie haben keine Berechtigung!"
             KeyCode = 0
End If
End Select
End Sub


Da ich eine Tastenvorschau in einem Bericht nicht aktivieren kann und eine Prozedur "bei Taste ab" nicht einfügen kann, hatte ich es beim "öffnen des Berichtes versucht. Hat leider nicht funktioniert.  :(
Ist es möglich diesen Code irgendwie für meine Berichte nutzbar zu machen. Oder hat jemand von Euch vielleicht eine Idee. Ich hatte schon an eine Globale Variante gedacht, nur reicht da wahrscheinlich mein Access-Wissen nicht wirklich aus.
Ich würde mich freuen, wenn Ihr mir helfen könntet und bedanke mich schon mal bei Euch für die Mühe.
Gruß der Cuber
Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: MzKlMu am August 08, 2016, 18:35:50
Hallo,
und warum fängst Du das jetzt in diesem Forum noch mal an ?
Hier gibt es auch keine anderen Antworten, sind ja im wesentlichen die gleichen Leute.

http://www.ms-office-forum.net/forum/showthread.php?t=334554

Du machst Dir auch keine Freunde und riskierst eher keine Antwort.
Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: PhilS am August 08, 2016, 19:41:59
Ich finde es nicht grundsätzlich verkehrt, eine Frage die du bereits in einem anderen Forum gestellt hast, hier erneut zu stellen. - Aber wenn du bereits einen Haufen Antworten erhalten hast, wie in diesem Fall im MS-Office-Forum, dann solltest du die bereits erfolgten Lösungsvorschläge in deiner neuen Frage kurz zusammenfassen und erläutern warum sie dich nicht weiterbringen.

Insbesondere warum die Variante kompilieren zur MDE/AccDE nicht in Frage kommt würde mich interessieren. Das ist aus meiner Sicht die einzige sinnvolle Lösung.


Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: Cuber am August 09, 2016, 08:50:55
Hallo Klaus,
Deine Einwände bzw. Hinweise mögen richtig sein, jedoch müssten diese von jemanden kommen, der die gleichen Usernamen nutzt und sich nicht hinter einen anderen Namen versteckt. Denn Dein Username aus dem anderen Forum...ohne ihn zu nennen...den hättest Du ohne Probleme hier nehmen können. Ich glaube nicht, wie auch von "Phils" beschrieben, dass die Anfrage in einem anderen Forum verwerflich ist. Ich kann bei zwei verschiedenen Standorten von Foren nicht davon ausgehen, dass immer die gleichen Mitglieder vorhanden sind und schon gar nicht, wenn sie sich unter anderem Namen tarnen.
Wenn Du ehrlich mit Dir selber bist und Dir meine Gedanken in Ruhe durchdenkst, wirst Du
1. nix anderes als ich feststellen und
2. weiterhin auf mögliche Anfragen antworten.
Ich danke Dir für den Hinweis "....Du machst Dir auch keine Freunde....."
Ich hoffe ich habe mir keinen Feind gemacht. Was aus meiner Sicht Quatsch ist :)
Gruß der Cuber
Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: MzKlMu am August 09, 2016, 08:58:04
@Cuber,
lies die Regeln dieses und des anderen Forums. Und die Regeln hast Du bestätigt.

Wenn Du mal nach Crossposting googelst wirst Du auch einleuchtende Gründe finden, warum man es nicht tun sollte. In den meisten Foren steht in den Regeln dass es unerwünscht ist, so auch in den beiden Foren in denen Du gepostet hast.
Zitat von: Zitat aus den Regeln von MSOFUnerwünscht sind auch Crosspostings - also dieselbe Frage gleichzeitig in mehreren Foren (nicht nur im MSOF). Denn auf diese Weise werden mehrere Gruppen von Leuten mit dem gleichen Thema befasst, ohne dass sie voneinander wissen. Naturgemäß laufen dann die Antworten, die im einen Forum "zu spät" gegeben wurden, ins Leere und bleiben ohne Resonanz. Es reicht also, zunächst in einem Forum zu posten - wenn die Antworten dann unbefriedigend sein sollten, steht es einem anschließend immer noch offen, ein anderes Forum zu Rate zu ziehen.

Wenn es in einem Forum keine Antworten gibt, spricht natürlich nichts dagegen.

Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: Cuber am August 09, 2016, 09:11:11
Hallo PhilS,
danke für Deine Info. :)
Kurz zur Erläuterung: Ich arbeite zwischen 12 und 14 Stunden am Tag, neben meiner Arbeit....wo andere sich mit privaten Dingen beschäftigen, programmiere ich die Datenbank und schreibe solche Anfragen und Antworten. Ich versuche heute noch eine Zusammenfassung zu schreiben und diese hier darzulegen.
ZitatInsbesondere warum die Variante kompilieren zur MDE/AccDE nicht in Frage kommt würde mich interessieren. Das ist aus meiner Sicht die einzige sinnvolle Lösung.
Da hatte ich einen Forenmitglied geschrieben, dass eine Fehlermeldung kommt, wie folgt:
Zitat"Die Datenbank konnte nicht in eine MDE umgewandelt werden". Dieser Fehler tritt gewöhnlich im Zusammenhang mit der Kompilierung von einer großen Datenbank zu einer MDE-Datei auf. Aufgrund der Kompilierungsmethode dieser Datenbank wird eine beträchtliche Anzahl von TableID-Verweisen für jede Tabelle erstellt.

Ich kann leider nicht sagen, woran das liegt. Ich habe ca. 150 Forms, 120 Reporte, 100 Tabellenverknüpfungen zur Backend, ca. 200 Abfragen naja auch ein paar Makros ca. 30 und 15 Module.
Die Idee ist schon gut, nur aus mir nicht bekannten Gründen noch nicht durchzuführen.
Daher versuche ich auch einen anderen Weg, welcher zwar schwieriger ist aber möglicherweise dann funktioniert.

LG der Cuber
Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: Cuber am August 09, 2016, 09:46:15
Hallo Community,
ich werde den Block hier einstellen um die Hinweise der Richtlinien zu berücksichtigen.
Sorry, dass ich Eure Zeit beansprucht habe
Cuber
Titel: Re: Acc2003 - F-Tasten im Bericht-Report sperren
Beitrag von: bahasu am August 09, 2016, 12:18:42
Hi,

Zitat von: Cuber am August 09, 2016, 09:46:15
Sorry, dass ich Eure Zeit beansprucht habe

ist blöd, das nach dem Ausprobieren eines Lösungsweges zu lesen:
Makro Autokeys funktioniert auch beim Bericht.

Harald