Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > Επιλογές γραμμής εργαλείων και κορδελας(Επαναφορά θέματος)

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 30-10-14, 22:31
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή Επιλογές γραμμής εργαλείων και κορδελας(Επαναφορά θέματος)

Καλησπέρα σε όλους.
Ανοίγω εκ νέου το θέμα "Επιλογές γραμμής εργαλείων και κορδελας", καθόσον έλαβα προσωπικό μήνυμα από μελος του Forum, με το οποίο επιλύεται το ζητούμενο και για λόγους εκμάθησης θεωρώ επιβεβλημένη την επαναφορά του θέματος.
[Σε μια φόρμα έχω αποεπιλέξει (Uncheck) τις επιλογές:
1) Πλήρη μενού και
2) Προεπιλεγμένα μενού συντόμευσης
μεσω των επιλογών Access>επιλογές γραμμής εργαλείων και κορδέλας.
Θα ήθελα τη βοήθειά σας στο ακόλουθο θέμα:
Είναι δυνατόν, να επιλέγονται τα παραπάνω, μέσα από ανοικτή φόρμα, με κουμπί εντολής, και αντίστροφα (να αποεπιλέγονται), με την προυπόθεση να μην απαιτείται επανεκκίνηση της βάσης για την άμεση και πλήρη λειτουργικότητά τους ως εργαλείων της βάσης;]

Σας ευχαριστώ εκ των προτέρων
Με εκτίμηση
Δημήτρης
Απάντηση με παράθεση
  #2  
Παλιά 30-10-14, 22:45
Όνομα: Κώστας
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 05-10-2014
Μηνύματα: 22
Προεπιλογή

Χαιρετώ όλη την κοινότητα

Είναι η πρώτη μου ανάρτηση σε αυτό το forum, αφού πρώτα περιηγήθηκα εντυπωσιασμένος σε όλο σχεδόν ο forum και ειδικά στην Access.

Αξίζουν πολλά συγχαρητήρια στους δημιουργούς αλλά και σε όσους συμμετέχουν στις συζητήσεις. Θεωρώ οτι ένα μεγάλο «ΕΥΧΑΡΙΣΤΩ» ότι είναι η ελάχιστη ηθική ανταμοιβή στους ανιδιοτελείς σκοπούς λειτουργίας της ιστοσελίδας.

Είναι μεγάλη μου χαρά και ευχαρίστηση που συμμετέχω σε αυτό το forum. Είναι πηγή γνώσης και οι απαντήσεις που δίδονται είναι εμπεριστατωμένες και τεκμηριωμένες από εξειδικευμένους και καταρτισμένους επιστήμονες πάνω στο αντικείμενο.

Αν και έχω δημιουργήσει αρκετές Βάσεις Δεδομένων με την Access μετά την περιήγησή μου στο forum άλλαξα γνώμη για τις ταπεινές μου γνώσεις στο αντικείμενο και παρακάτω θα προσπαθήσω να δώσω μια λύση στον παραπάνω φίλο μας το Δημήτρη .

Επί της ουσίας:
Για να ανοίγει η Βάση δεδομένων απευθείας χωρίς τα προεπιλεγμένα μενού και λειτουργίες πρέπει κατά την εκκίνηση να υπάρχουν διαδικασίες που να απενεργοποιούν τις ιδιότητες (False) της Βάσης που αποεπιλέγεις όταν αυτή είναι ανοιχτή.

Χρησιμοποίησε την παρακάτω Δημόσια Λειτουργία :

Κώδικας:
Public Function DisableProperties()
    On Error GoTo TheError
    DoCmd.ShowToolbar "Ribbon", acToolbarNo
    'Disable properties listed below by setting the property value to False
    SetProperties "StartUpShowDBWindow", dbBoolean, False
    SetProperties "StartUpShowStatusBar", dbBoolean, False
    SetProperties "AllowFullMenus", dbBoolean, False
    SetProperties "AllowSpecialKeys", dbBoolean, False
    SetProperties "AllowBypassKey", dbBoolean, False
    SetProperties "AllowShortcutMenus", dbBoolean, False
    SetProperties "AllowToolbarChanges", dbBoolean, False
    SetProperties "AllowBreakIntoCode", dbBoolean, False
    SetProperties "AllowBuiltinToolbars", dbBoolean, False
    Exit Function
    
TheError:
    MsgBox Err.Description
    Exit Function
End Function
Η οποία πρέπει να τοποθετηθεί σε ένα Module

Τη λειτουργία αυτή θα την καλέσεις με το φόρτωμα της αρχικής φόρμας εκκίνησης η οποία μπορεί να είναι μια φόρμα εισαγωγής Κωδικού για είσοδο στις λειτουργίες της Βάσης για περισσότερη ασφάλεια.

Κώδικας:
Private Sub Form_Load()
    Call DisableProperties
End Sub
Κάθε φορά που θα εκκινείς τη Βάση οι ιδιότητες της βάσης που εμφανίζονται παραπάνω θα είναι απενεργοποιημένες και δεν θα έχει πρόσβαση στο σχεδιασμό κ.λ.π.

Χρειάζεται γιαυτό το σκοπό να δημιουργήσεις ένα κουμπί σε μια φόρμα που να επαναφέρει τις λειτουργίας στην αρχική τους κατάσταση (True)

Στο ίδιο Module βάλε την παρακάτω λειτουργία :

Κώδικας:
Public Function EnableProperties()
    On Error GoTo ErrorHandler:
    DoCmd.ShowToolbar "Ribbon", acToolbarYes
    'Set all properties listed below back to normal by setting value to True
    'Show Database window
    SetProperties "StartUpShowDBWindow", dbBoolean, True
    SetProperties "StartUpShowStatusBar", dbBoolean, True
    'show Access Full Menus.
    SetProperties "AllowFullMenus", dbBoolean, True
    'enable F11, ALT F11, etc. for short key
    SetProperties "AllowSpecialKeys", dbBoolean, True
    'Shift Key Override on loading
    SetProperties "AllowBypassKey", dbBoolean, True
    'allow Access Shortcut Menus. May be too severe
    SetProperties "AllowShortcutMenus", dbBoolean, True
    SetProperties "AllowToolbarChanges", dbBoolean, True
    SetProperties "AllowBreakIntoCode", dbBoolean, True
    SetProperties "AllowBuiltinToolbars", dbBoolean, True
    Exit Function
ErrorHandler:
    MsgBox Err.Description
    Exit Function
End Function
Τη Function αυτή την καλείς με ένα Button τοποθετημένο σε μια φόρμα σου (π.χ. Administration Panel) η οποία φόρμα μπορεί να είναι και αυτή κλειδωμένη για περισσότερη ασφάλεια.
Ο Κώδικας στο Button σου με το click μπορεί να είναι ο παρακάτω :

Κώδικας:
Private Sub cmd_LockunlockDB_Click()
    Dim strPasswd As String
    'Dim counter As Integer
    Dim Remaining As Integer
    Dim intLogonAttempts As Integer
    intLogonAttempts = 0
    Do Until intLogonAttempts = 3
        strPasswd = InputBox("Παρακαλώ πληκτρολογήστε έναν έγκυρο ωδικό π.χ. 1234." & vbCrLf & _
                             "Απαιτείται Κωδικός για πρόσβαση στη Βάση Δεδομένων με πλήρεις λειτουργίες  - psw 1234", "Κωδικός Εισόδου στο CPanel")
        ‘Αν ο Κωδικός πληκτρολογηθεί λανθασμένα τρεις φορές η Βάση θα κλείσει .
        If strPasswd = "1234" Then
            Call EnableProperties
 
            Exit Sub
        Else

                        intLogonAttempts = intLogonAttempts + 1
            Remaining = 3 - intLogonAttempts
                          MsgBox "Λανθασμένος κωδικός Εισόδου!" & vbCrLf & _ 
Εχετε " & Remaining & " ακόμα προσπάθειες πληκτρολόγησης έγκυρου Κωδικού." & vbCrLf & _
vbOKOnly, "Πληροφορία κωδικού Εισόδου"
            If intLogonAttempts = 3 Then
                MsgBox "Δεν έχετε πρόσβαση στη Διαχείριση της Βάσης δεδομένων. Παρακαλώ επικοινωνήστε με το Διαχειριστή..", vbCritical, "Περιορισμένη Πρόσβαση!"
                Application.Quit
            End If
        End If
    Loop

End Sub
Μην ξεχάσεις να δηλώσεις στο Module σου τα παρακάτω :

Κώδικας:
Option Compare Database
Option Explicit
Const dbBoolean = 1
Για να δεις ποιες ιδιότητες της βάσεις είναι ενεργοποιημένες ή απενεργοποιημένες μπορείς να καλέσεις στο «Immediate» της VBA

Κώδικας:
CurrentDb().Properties("StartupShowDBWindow")
CurrentDb().Properties("StartupShowStatusBar")
CurrentDb().Properties("AllowBuiltinToolbars")

Για να δεις τις ιδιότητες της Βάσης σου:

Κώδικας:
Function FindCurrentDbProperties()
    Dim i As Integer
    For i = 0 To CurrentDb.Properties.Count - 1
        Debug.Print CurrentDb.Properties(i).Name
    Next
End Function
Ή

Κώδικας:
Sub testCodeDBProperties()
On Error Resume Next
Dim prop As Variant
For Each prop In CodeDb.Properties
    Debug.Print prop.name & ": " & prop & " type: " & VarType(prop)
Next prop
End Sub

Πληκτρολόγησε στο «Immediate» της VBA FindCurrentDbProperties

FindCurrentDbProperties

ή

testCodeDBProperties

Υπάρχουν μειονεκτήματα σε αυτή τη λειτουργία και ένας εξειδικευμένος χρήστης της Access μπορεί να την ανοίξει σε προβολή σχεδίασης και πάλι με κάποιον τρόπο που δεν θα τον περιγράψω εδώ.

Η Καλύτερη επιλογή είναι να συνδυάσεις τα παραπάνω με ένα προσωποποιημένο μενού επιλογών στην κεντρική σου κονσόλα (RibbonToolBar)


Ο παραπάνω κώδικας είναι παρόμοιος με αυτόν που χρησιμοποιεί στο παράδειγμά του ο Διαχειριστής Τάσος Φιλοξενίδης (Access samples - Χρήσιμα αρχεία & παραδείγματα > παράδειγμα προστασίας αντικειμένων βάσης δεδομένων από επεξεργασία (αποκλείει την προβολή σχεδίασης σε φόρμες).

Δημοσιεύω ένα δείγμα Β.Δ. για να δεις τον κώδικα σε λειτουργία.Η Βάση ανοίγει πάντα κλειδωμένη εκτός αν ο διαχειριστής την ξεκλειδώσει.

Αν κάτι δεν καταφέρεις καλά τα ξαναλέμε.
Καλή συνέχεια

Οι απόψεις της κοινότητας θα ήταν πολύτιμες για βελτιώσεις της παραπάνω λειτουργίας.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip LockDB-2.zip (163,0 KB, 48 εμφανίσεις)
Απάντηση με παράθεση
  #3  
Παλιά 30-10-14, 23:05
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Φίλε Κώστα
Καλωσόρισες στο Forum και σε ευχαριστώ για τη μακροσκελή και συνάμα απολύτως επεξηγηματική και κατατοπιστική απάντησή σου.
Θα μελετηθεί δεόντως και θα έχεις νέα μου λίαν συντόμως .

Φιλικά/Δημήτρης
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[ Ασφάλεια] Μενού - κρύψιμο κορδέλας απο χρήστες Dafnh0106 Access - Ερωτήσεις / Απαντήσεις 8 07-03-17 05:33
[ Ασφάλεια] Επιλογές γραμμής εργαλείων και κορδελας dimitrisp Access - Ερωτήσεις / Απαντήσεις 2 01-11-14 15:28
[ Εκθέσεις ] ΣΥΝΕΧΕΙΑ ΤΟΥ ΘΕΜΑΤΟΣ:ΒΔ.πρόβλημα με το search asarigiannis Access - Ερωτήσεις / Απαντήσεις 6 13-05-14 07:35
Επιλογές σε εκτύπωση stavross Access - Ερωτήσεις / Απαντήσεις 12 16-02-13 23:52
Απόκρυψη κορδέλας και λοιπών εργαλείων theoma4 Access - Ερωτήσεις / Απαντήσεις 16 18-11-11 12:26


Η ώρα είναι 10:46.