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

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

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 29-01-16, 14:54
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή Μεταβίβαση τιμής πεδίου από φόρμα σε φόρμα

Γεια σε όλο το Forum.
Θα ήθελα για ακόμα μια φορά την πολύτιμη βοήθεια σας στο εξής πρόβλημα :

Στο παράδειγμα που επισυνάπτω έχω μια φόρμα «ΑΡΧΙΚΗ» που έχει 3 κουμπιά.
Όταν πατάω το κουμπί «ΑΝΟΙΓΜΑ ΦΟΡΜΑΣ ΝΕΑ ΣΤΟΙΧΕΙΑ» ανοίγω άμεσα την φόρμα «frmNewSTOIXEIA», καταχωρώ το επώνυμο και πατάω το κουμπί «ΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ» και ανοίγει μια άλλη φόρμα «frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ» και μου εμφανίζει μια λίστα με τα ονόματα, κάνοντας διπλό κλικ στο όνομα που θέλω μεταβιβάζω το όνομα με κώδικα vba από την φόρμα «frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ» στο πεδίο όνομα της φόρμας «frmNewSTOIXEIA» και όλα είναι μια χαρά.

Όταν πατάω το κουμπί «ΔΗΜΙΟΥΡΓΙΑ ΑΝΤΙΚΕΙΜΕΝΟΥ ΦΟΡΜΑΣ ΝΕΑ ΣΤΟΙΧΕΙΑ» δημιουργώ ένα νέο αντικείμενο της φόρμας «frmNewSTOIXEIA» με κώδικα vba, καταχωρώ το επώνυμο και πατάω το κουμπί «ΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ» και ανοίγει η φόρμα «frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ» και μου εμφανίζει την λίστα με τα ονόματα, κάνοντας διπλό κλικ στο όνομα που θέλω το επιλεγώ, το πρόβλημα είναι ότι δεν μπορώ με κώδικα vba από την φόρμα «frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ» να μεταβιβάσω το ονομα στο πεδίο όνομα της φόρμας «frmNewSTOIXEIA».

Ευχαριστώ εκ των προτέρων.
Συνημμένα Αρχεία
Τύπος Αρχείου: zip forms.zip (34,3 KB, 19 εμφανίσεις)
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #2  
Παλιά 29-01-16, 16:40
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Γιώργο, δες το συνημμένο.

1) Άλλαξα την προβολή της φόρμας [ΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ], σε συνεχή, για να λειτουργούν τα συμβάντα.

2) Η αντιγραφή γίνεται με διπλό κλικ στο όνομα και όχι στη φόρμα, ώστε αυτό το όνομα (τρέχον) να αντιγράφεται.

Θα διαπιστώσεις επίσης ένα συμμάζεμα στον κώδικα.

Δημιούργησε πολλά στιγμιότυπα της φόρμας [frmNewSTOIXEIA] και δες αν το όνομα αντιγράφεται στο σωστό στιγμιότυπο.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: zip forms2.zip (105,6 KB, 42 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 31-01-16 στις 01:42. Αιτία: αλλαγή συνημμένου
Απάντηση με παράθεση
  #3  
Παλιά 30-01-16, 23:35
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή

Σε ευχαριστώ για την απάντηση σου.

Το προβλημα που εχω δεν λυθηκε. θέλω να δημιουργώ πολλαπλά αντικείμενα της φόρμας [frmNewSTOIXEIA] και να τα διαχειρίζομαι ταυτόχρονα. Σε κάθε αντικείμενο της φόρμας [frmNewSTOIXEIA] όταν πατάω το κουμπί ΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ να ανοίγει η φόρμα [frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ] και κάνοντας διπλό κλικ στο ΟΝΟΜΑ από την φόρμα [frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ] να αντιγράφετε το όνομα στην εκάστοτε φόρμα [frmNewSTOIXEIA] στο πεδίο ΟΝΟΜΑ από την φόρμα που πάτησα το κουμπί ΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ.

To βασικό μου πρόβλημα είναι ότι ενώ δημιουργώ πολλαπλά αντικείμενα φόρμας μέσα από κώδικα vba δεν μπορώ να τα επικαλεστώ.

Παράδειγμα

Όταν ανοίγω μεμονωμένα την φόρμα [frmNewSTOIXEIA] μπορώ να κάνω ανάθεση τιμών από την φόρμα [frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ] «κώδικας: Me.ΟΝΟΜΑ.Value» στην φόρμα [frmNewSTOIXEIA] «κώδικας: Form_frmNewSTOIXEIA.ΟΝΟΜΑ.Value»

Form_frmNewSTOIXEIA.ΟΝΟΜΑ.Value = Me.ΟΝΟΜΑ.Value

Αυτό δεν ισχύει όταν δημιουργώ πολλαπλά αντικείμενα της φόρμας [frmNewSTOIXEIA] γιατί στη ουσία δεν ξέρω το όνομα – index του κάθε αντικειμένου και δεν ξέρω αν αυτό υποστηρίζεται από την Access.

Παρακαλώ τα φώτα σας!!!

Πιστεύω να μην σε κούρασα και να έγινα κατανοητός.

Όπως και να έχει σε ευχαριστώ για τον χρόνο σου και την πολύτιμη βοήθεια που παρέχεις σε όλοι την κοινότητα.

Με φιλικούς χαιρετισμούς
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #4  
Παλιά 31-01-16, 01:40
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα.

Γιώργο, ανέβασα κατά λάθος ένα αρχείο που δεν περιέχει τη γραμμή κώδικα:

clnClientNewaddst.Add Item:=frmaddSTOIXEIA, Key:=CStr(frmaddSTOIXEIA.Hwnd), με αποτέλεσμα να μη δημιουργούνται πολλά στιγμιότυπα.

Το αντικατέστησα με το σωστό.

Στο νέο αρχείο δοκίμασε τα εξής:

1) Πάτησε το κουμπί [ΔΗΜΙΟΥΡΓΙΑ ΑΝΤΙΚΕΙΜΕΝΟΥ ΦΟΡΜΑΣ ΝΕΑ ΣΤΟΙΧΕΙΑ] για να δημιουργηθεί ένα στιγμιότυπο της φόρμας [frmNewSTOIXEIA].

2) Επανάλαβε το βήμα 1 Κ φορές (πχ Κ=4) για να δημιουργηθούν συνολικά Κ+1 (πχ 4+1=5) στιγμιότυπα (αντίγραφα) της φόρμας [frmNewSTOIXEIA].

3) Σ’ ένα στιγμιότυπο πάτησε το κουμπί [Επιλογή Ονόματος] για να ανοίξει η φόρμα [frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ]

4) Στη φόρμα [frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ] κάνε διπλό κλικ σε κάποιο όνομα.
Το όνομα αυτό θα αντιγραφεί στο στιγμιότυπο από το οποίο ανοίχτηκε η φόρμα [frmΕΠΙΛΟΓΗ ΟΝΟΜΑΤΟΣ].

5) Επανάλαβε τα βήματα 3 και 4 σε όλα τα στιγμιότυπα και θα διαπιστώσεις ότι το όνομα αντιγράφεται στο αντίστοιχο στιγμιότυπο.

Με άλλα λόγια το αρχείο λειτουργεί σύμφωνα με το ζητούμενο.

Η γραμμή κώδικα που κάνει την αντιγραφή του ονόματος είναι:
cmdbtn.Parent.ΟΝΟΜΑ.Value = Me.ΟΝΟΜΑ.Value

Διευκρινίζω επίσης ότι η μεταβλητή cmdbtn δηλώθηκε ως Access.CommandButton.

Φιλικά/Γιώργος
Απάντηση με παράθεση
  #5  
Παλιά 31-01-16, 14:55
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή

Γιώργο είσαι καταπληκτικός!!!

Για ακόμα μια φορά σε ευχαριστώ.

Στο κλείσιμο των φορμών [frmNewSTOIXEIA] γίνετε με την σειρά που ανοίγουν και δεν κλείνει η φόρμα στην οποία πατώ το κουμπί κλείσιμο. Αν γινόταν να κλείνει η εκάστοτε φόρμα στην οποία πατάω το κουμπί κλείσιμο.

Και πάλι σε ευχαριστώ θερμά!!!!!

Με φιλικούς χαιρετισμούς
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #6  
Παλιά 31-01-16, 16:29
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Στο αρχείο που ανέβασα, τα στιγμιότυπα της φόρμας [frmNewSTOIXEIA], εμφανίζονται σε καρτέλες.

Από όλες τις καρτέλες (και τις φόρμες), κάθε φορά, ενεργή είναι μόνο μία.

Το κουμπάκι κλεισίματος X, που βλέπουμε, ανήκει στην ενεργή φόρμα.

Συνεπώς, για να κλείσουμε μια φόρμα, πρώτα θα πρέπει να κάνουμε κλικ στην καρτέλα της (tab) για να γίνει ενεργή και μετά στο κουμπάκι κλεισίματος X.

Ακολουθώντας την παραπάνω διαδικασία, δεν παρατήρησα κάποιο περιορισμό στη σειρά ενεργοποίησης και κλεισίματος των φορμών (Tab).

Φιλικά/Γιώργος
Απάντηση με παράθεση
  #7  
Παλιά 31-01-16, 17:26
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή

Γιώργο έχεις δίκιο όταν πατάς το X στην κάθε καρτέλα κλείνει.

Όταν πατάς το κουμπί κλείσιμο που υπάρχει στην κάθε φόρμα στην (όχι το Χ από πάνω δεξιά ) δεν κλείνει η τρέχουσα φόρμα.
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
  #8  
Παλιά 31-01-16, 18:30
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Γιώργο, ενεργή είναι η φόρμα που ο τίτλος (Caption) στην καρτέλα είναι σε κοκκινωπό φόντο.

Στον υπολογιστή μου, αν ενεργοποιώ τις φόρμες όπως περιέγραψα στο προηγούμενο μήνυμα, είτε πατήσω το κουμπάκι X, είτε το κουμπί κλεισίματος [cmdclose], που πρόσθεσες στη φόρμα, έχω το ίδιο αποτέλεσμα.

Η φόρμα κλείνει
Απάντηση με παράθεση
  #9  
Παλιά 01-02-16, 08:58
Super Moderator
Όνομα: ΓΙΩΡΓΟΣ
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 14-01-2014
Μηνύματα: 234
Προεπιλογή

Καλημέρα Γιώργο.

Συγνώμη που σε ζαλίζω αλλά σε εμένα δεν δουλεύει σωστά το κουμπί κλείσιμο της φόρμας. Κλείνουν με την σειρά που ανοίγουν οι φόρμες.

Το pc που τρέχω το παράδειγμα σου έχει windows 7 Gr Ultimate 32bit και Office 2013 32bit απλά το αναφέρω ενδεικτικά.
Αν έχεις κάποια ιδέα για την διαφορά αυτή θα ήταν πολύτιμη.

Όπως και να έχει και πάλι σε ευχαριστώ!!!
__________________
Βραχνάκης Γιώργος
vrahnakisg@gmail.com
Απάντηση με παράθεση
Απάντηση στο θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
Αθροίσματα σε φόρμα και ενημέρωση πεδίου σε πίνακα. steliosgr Access - Ερωτήσεις / Απαντήσεις 1 23-03-14 11:07
Μεγένθυση πεδίου σε φόρμα wint3r Access - Ερωτήσεις / Απαντήσεις 1 29-08-13 10:41
[ Εκθέσεις ] Ενημέρωση πεδίου από φόρμα mgeorge Access - Ερωτήσεις / Απαντήσεις 7 08-09-12 21:49
Διατήρηση τιμής αριθμητικού πεδίου σε φόρμα καταχώρησης pnikolareas Access - Ερωτήσεις / Απαντήσεις 2 26-09-11 11:48
[ Ερωτήματα ] Αυτόματη απόδοση τιμής προιόντος σε φόρμα AKIS1986 Access - Ερωτήσεις / Απαντήσεις 5 27-03-11 20:25


Η ώρα είναι 14:50.