ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > [ Φόρμες ] Χρήση ίδιου κώδικα σε πολλές φόρμες αλλά γραμμένος σε μιά μόνον Module

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

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 22-04-19, 15:01
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή Χρήση ίδιου κώδικα σε πολλές φόρμες αλλά γραμμένος σε μιά μόνον Module

Γειά σας

Στο παρακάτω συνημμένο (απλοποιημένο παράδειγμα βάσης), υπάρχουν τρεις φόρμες.
Σε κάθε φόρμα υπάρχει ένα κουμπί εντολής όπου με ανάλογο κώδικα καλείται μιά τρίτη φόρμα.
Ο κώδικας βρίσκεται σε μια Module.(διότι δε θέλουμε να ξαναγράφεται σε κάθε εντολή)
Ωστόσο, ο κώδικας δε λειτουργεί κατ' αυτόν τον τρόπο.
Πώς θα είναι δυνατόν να διορθώσουμε - τροποποιήσουμε τον εν λόγω κώδικα προκειμένου
να λειτουργεί για όλες τις υπάρχουσες φόρμες?

Σε κάθε περίπτωση, θέλουμε ο τρέχων κώδικας να βρίσκεται γραμμένος σε μιά μόνον Module!

Σας ευχαριστώ εκ των προτέρων
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb Module.accdb (480,0 KB, 10 εμφανίσεις)
__________________
Φιλικά/Δημήτρης
Απάντηση με παράθεση
  #2  
Παλιά 22-04-19, 18:04
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 237
Προεπιλογή

Καλησπέρα Δημήτρη,

Δες το αρχείο, πιστεύω να είναι αυτό που θέλεις.

Ευχαριστώ.
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb Module.accdb (480,0 KB, 10 εμφανίσεις)
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #3  
Παλιά 22-04-19, 18:16
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Καλησπέρα

Γιώργο, σ' ευχαριστώ για την άμεση πρότασή σου.

Αλλά δε λειτουργεί, δηλαδή πατώντας το κουμπί δεν αναδύεται η φόρμα "FORM" η οποία να εμφανίζει τη συγκεκριμένη εγγραφή που απαιτεί ο κώδικας...

Ανεβάζω εκ νέου το αρχείο στο οποίο διορθώθηκε το όνομα της φόρμας "FORM" σε frmFinal (που είναι και το σωστό)
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb Module3.accdb (480,0 KB, 3 εμφανίσεις)
__________________
Φιλικά/Δημήτρης

Τελευταία επεξεργασία από το χρήστη dimitrisp : 22-04-19 στις 18:56.
Απάντηση με παράθεση
  #4  
Παλιά 22-04-19, 19:52
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 237
Προεπιλογή

Καλησπέρα Δημήτρη,

Αν κατάλαβα καλά αυτό πρέπει να είναι το ζητούμενο.

Ευχαριστώ.
Συνημμένα Αρχεία
Τύπος Αρχείου: accdb Module4.accdb (480,0 KB, 16 εμφανίσεις)
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #5  
Παλιά 22-04-19, 20:39
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Καλησπέρα

Πράγματι, Γιώργο, αυτό είναι!!!

Ευχαριστώ, νάσαι καλά, καλή συνέχεια...
__________________
Φιλικά/Δημήτρης
Απάντηση με παράθεση
  #6  
Παλιά 22-04-19, 22:05
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Καλησπέρα

Γιώργο, μιά ακόμη βοήθεια, αν μπορείς:
Όταν έχουμε τις φόρμες σε μορφή "περιήγησης" ο κώδικας χτυπάει στο
Set frm = Forms(frmName)...
Έχεις καμιά ιδέα γιαυτό?

Ανεβάζω σχετικό παράδειγμα.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip Module5.zip (25,0 KB, 7 εμφανίσεις)
__________________
Φιλικά/Δημήτρης
Απάντηση με παράθεση
  #7  
Παλιά 23-04-19, 10:39
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 237
Προεπιλογή

Καλήμερα Δημήτρη,

Πρέπει να διορθώσεις τα ονόματα των αντικείμενων σου (Φόρμες).

Δεν καταλαβαίνω την δομή των φορμών και δεν έχω καταλάβει ακόμα τι προσπαθείς να κάνεις.

Αν Θέλεις περιέγραψε τι προσπαθείς να κάνεις.

Ο κώδικας βγάζει λάθος γιατί δεν βρίσκει το αντικείμενο.

Ευχαριστώ.
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #8  
Παλιά 23-04-19, 13:20
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Γειά σας

Γιώργο, θα προσπαθήσω να εξηγήσω "χονδρικά" τι προτίθεμαι να δημιουργήσω:
Προσπαθώντας να ταξινομήσω τις φόρμες μου, ανάλογα με το αντικείμενό τους,
σκέφτηκα να χρησιμοποιήσω καρτέλες οριζόντιες και κάθετες με τον ακόλουθο τρόπο:
Στη γραμμή εργαλείων επέλεξα Δημιουργία > Περιήγηση > Οριζόντιες καρτέλες.
Έτσι δημιουργήθηκε μιά φόρμα περιήγησης. Σε αυτή, σε προβολή διάρθρωσης, τοποθέτησα
διάφορες σχετιζόμενες φόρμες.
Καθ' όμοιο τρόπο δημιούργησα άλλη φόρμα περιήγησης με κάθετες καρτέλες κλπ.

Δεν ξέρω αν ο τρόπος που επιχείρησα να ταξινομήσω τις φόρμες είναι και ο καλύτερος.
Διότι, όταν επιχείρησα να τοποθετήσω την ίδια εντολή που επαναλαμβάνεται σε πολλές Modules σε μία
Module, όπως περιγράφηκε σε παραπάνω μηνύματα, παρουσιάστηκε πρόβλημα:

Όταν η κάθε φόρμα είναι μόνη της η εντολή λειτουργεί τέλεια ενώ, αντίθετα, όταν η κάθε φόρμα είναι
μέσα στη φόρμα περιήγησης δε λειτουργεί.


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

Σε κάθε περίπτωση, σ' ευχαριστώ γιά την ενασχόλησή σου με το θέμα μου.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip Module6.zip (27,5 KB, 10 εμφανίσεις)
__________________
Φιλικά/Δημήτρης
Απάντηση με παράθεση
  #9  
Παλιά 24-04-19, 13:37
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 237
Προεπιλογή

Καλησπέρα Δημήτρη,

Συγνώμη για την καθυστέρηση της απαντήσεως μου.

"Αν και δεν συμφωνώ με τον τρόπο που πας να φτιάξεις την διαχείρισή των φορμών"
Δες το αρχειο.

Πρώτα από όλα να σου πω ότι έχω αλλάξει τα ονόματα των φορμών για ευκολία στον κώδικα.

Έχω φτιάξει δυο Function την test και test1 κάνουν ακριβώς το ίδιο πράγμα αλλά η διαφορά τους είναι στον κώδικα.
Το πρόβλημα στο να μεταχειριστείς ένα αντικείμενο που είναι πάνω σε ένα άλλο αντικείμενο θα πρέπει να ορίσεις την πλήρη διαδρομή του αντικειμένου π.χ. Main!MangForm!SubFormExplor![ID] .

Παρατήρησε όταν έχεις επιλέξει την καρτέλα Form1 και πατήσεις το cmd1 θα δεις ότι ανοίγει η φόρμα frmFinal εκτελώντας την ρουτίνα test και αφού την κλείσεις ανοίγει ξανά εκτελώντας την ρουτίνα test1.

Αν το ζητούμενο σου είναι να ανοίγει η φόρμα frmFinal από οποιαδήποτε φόρμα στην φόρμα περιηγήσεις και να σου παρουσιάζει την τρέχουσα εγγραφή πιστεύω ότι σε καλύπτει η Function test1
.
Μελέτησε τον κώδικα και αν θέλεις οτιδήποτε είμαι στην διάθεση σου.

Ευχαριστώ.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip FinalModule.zip (48,7 KB, 30 εμφανίσεις)
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #10  
Παλιά 24-04-19, 20:49
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 20-07-2014
Περιοχή: Πάτρα
Μηνύματα: 385
Προεπιλογή

Καλησπέρα

Γιώργο, σε υπερευχαριστώ γιά τη βοήθειά σου.
Η πρότασή σου με κάλυψε επαρκώς. Θα προσαρμόσω ανάλογα τον κώδικα και θα επανέλθω.

Ωστόσο, με προβλημάτισες διότι δε συμφωνείς με τον τρόπο που προτίθεμαι να διαχειριστώ τις Φόρμες.
Τι άλλο θα μπορούσα να κάνω? Σκέφτηκα να κάνω σελιδοδείκτες. Αλλά, νομίζω, είναι το ίδιο περίπου πράγμα.
Συμπερασματικά, προσπαθώ να ταξινομήσω τις φόρμες κατά ομάδες με τις αντίστοιχες υποομάδες
έτσι ώστε, όταν επιλέγω μιά γενική ομάδα να μπορώ, στη συνέχεια,
να επιλέγω κάποια από τις σχετιζόμενες με αυτή υποομάδα.

Αν δεν κάνω κατάχρηση, θα είχες την καλοσύνη να προτείνεις κάτι διαφορετικό?
__________________
Φιλικά/Δημήτρης
Απάντηση με παράθεση
Απάντηση στο θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[ Φόρμες ] αναζητηση σε πολλες φορμες Γιάννης Θερμός Access - Ερωτήσεις / Απαντήσεις 2 17-02-16 11:13
[ Φόρμες ] Απλές μαθηματικές πράξεις σε φόρμες με χρήση πλαισίων κειμένου johnpantazo Access - Ερωτήσεις / Απαντήσεις 4 07-06-15 19:01
[Γενικά] Ταυτόχρονη χρήση ίδιου αρχείου απο δύο χρήστες στο ίδιο τοπικό δίκτυο Βασίλης Καραχάλιος Excel - Ερωτήσεις / Απαντήσεις 5 03-04-14 08:47
Χρήση Combo box για αλλαγή τιμών σε συνεχείς Φόρμες louk14 Access - Ερωτήσεις / Απαντήσεις 1 11-10-13 21:58
Διόρθωση κώδικα σε Module alex Access - Ερωτήσεις / Απαντήσεις 2 12-08-11 13:01


Η ώρα είναι 21:36.